java_final修饰符
1.修饰变量时,表示该变量一旦获得初始值就不可改变
final修饰的成员变量必须由程序员显示地指定初始值,系统不会进行隐式初始化
- 类变量:必须在初始化块中指定初始值或声明该类变量时指定初始值
- 实例变量:必须在非静态初始化块、声明该实例变量或构造器中指定初始值
例如:
final int[] abc={1,2,6,5};
abc[2]=9;//合法
abc=null;//非法
Arrays.sort(abc);//对abc数组排序合法
2.修饰方法时,表示方法不可被重写
例如:
//会发生编译错误,不能重写final方法
public class Father{
public final void test(){...}
}
class Son extends Father{
public void test(){...}
}
//对于private方法,子类无法访问该方法,所以无法重写。子类只是重新定义一个新的方法。
//不会发生编译错误
public class Father{
private final void test(){...}
}
class Son extends Father{
public void test(){...}
}
3.修饰类时,表示修饰的类不可以有子类
例如:
//会发生编译错误,Father类被final修饰,不可以有子类
public final class Father{...}
class Son extends Father{...}
java_final修饰符的更多相关文章
- JAVA语言中的修饰符
JAVA语言中的修饰符 -----------------------------------------------01--------------------------------------- ...
- Java类访问权限修饰符
一.概要 通过了解Java4种修饰符访问权限,能够进一步完善程序类,合理规划权限的范围,这样才能减少漏洞.提高安全性.具备表达力便于使用. 二.权限表 修饰符 同一个类 同一个包 不同包的子类 不同包 ...
- iOS 方法修饰符
一.NS_DESIGNATED_INITIALIZER 用来修饰init方法,被修饰的方法称为designated initializer:没有被这个修饰的init方法称为convenience i ...
- C#基础回顾(一)—C#访问修饰符
一.写在前面的话 好久没有停下来总结自己,转眼间15年过去好些天,回首过去的日子,亦或失去,亦或所得!生活的节奏,常常让我们带着急急忙忙的节奏去追赶,也许这并不是每个人所期望的生活方式!于他人,于自己 ...
- 关于Java语言中那些修饰符
一.在java中提供的一些修饰符,这些修饰符可以修饰类.变量和方法,在java中常见的修饰符有:abstract(抽象的).static(静态的).public(公共的).protected(受保护的 ...
- C#基础知识八之访问修饰符
1. 类的访问修饰符 修饰符 访问权限 无或者internal 只能在同一个程序集中访问类 public 同一个程序集或引用该程序集的外部都可访问类 abstract或internal abstra ...
- java访问修饰符
了解面向对象思想的同学们,都知道"封装"这一基本特征,如何正确运用访问修饰符,恰恰能体现出封装的好坏. java访问修饰符有四个: 1)public:访问权限最高,其修饰的类.类变 ...
- java静态修饰符static的使用
class Person { private String name; private int age; /* * 假设每个Person对象的国籍都一样, * 那么每次调用都要赋值就会不合理. * 使 ...
- Scala访问修饰符(四)
Scala 访问修饰符基本和Java的一样,分别有:private,protected,public. 如果没有指定访问修饰符符,默认情况下,Scala对象的访问级别都是 public. Scala ...
随机推荐
- python制作pdf电子书
python制作pdf电子书 准备 制作电子书使用的是python的pdfkit这个库,pdfkit是 wkhtmltopdf 的Python封装包,因此在安装这个之前要安装wkhtmltopdf 安 ...
- 点击页面其它地方隐藏该div的方法
思路一 第一种思路分两步 第一步:对document的click事件绑定事件处理程序,使其隐藏该div 第二步:对div的click事件绑定事件处理程序,阻止事件冒泡,防止其冒泡到document,而 ...
- excel转html 实现在线预览
首先说一下,本人发布的代码都是经过本人亲测,并且用在实际项目中.如果觉得可以,希望大家点个赞,谢谢大家. 有什么问题,大家评论出来,一起交流.好了,不废话了,下面来说一说这个东西怎么做. 网上也有许多 ...
- Loadrunner12解决无法录制chrome及脚本为空问题
首先,得安装LR12,一般用LR12录制,由于未破解,用LR11跑并发. LR12官方文档说明里是支持chrome及火狐的,但是实际录制起来,还是有一定的问题,目前发现的问题主要有两个: (1)LR录 ...
- System.Runtime.Serialization.SerializationException”类型的未经处理的异常在 System.Runtime.Serialization.dll 中发生
异常信息: “System.Runtime.Serialization.SerializationException”类型的未经处理的异常在 System.Runtime.Serialization. ...
- Streaming结合Kafka
Spark2.11 两种流操作 + Kafka Spark2.x 自从引入了 Structured Streaming 后,未来数据操作将逐步转化到 DataFrame/DataSet,以下将介绍 S ...
- SequoiaDB版本在线升级介绍说明
1.前言 在SequoiaDB数据库发展过程中,基本保持每半年对外发行一个正式的Release版本.并且每个新发布的Release版本相对老版本而言,性能方面都有很大的提高,并且数据库也会在新版本中加 ...
- Docker部署DVWA
上次在Docker手动配置了一个Ubuntu的Lamp镜像,这次来试验一下使用这个镜像部署一个简单的web应用吧. 首先从Lamp镜像运行一个容器 root@VM-149-127-debian:~/a ...
- Markdown速查手册
之前一直使用简书做笔记,沉浸式的写作环境很棒.然而不知什么时候起,氛围愈发浮躁,软文鸡汤泛滥,离"简"字越来越远. 相比更加喜欢沉稳低调.内涵取胜的博客园.于是乎搬家! 搬家就要丢 ...
- Jmeter(十三)用Jmeter自带录制工具代理录制手机端应用脚本APP脚本
JM 菜单栏(即编辑下面的绿色按钮),Templates -->Select Template 选择 Recording -->create: 然后在工作台 (WorkBench)下面的H ...