Java的final修饰符
开发工具与关键技术:MyEclipse 10、Java语法
作者:邓婵
撰写时间:2019年 5月 10日
final:修饰符(关键字)有三种用法:1.类被声明为final意味着它不能再派生出新的子类,即不能被继承2.将变量声明为final可以保证在使用中不被改变;被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取不可修改3.被声明为final的方法不能在子类中被重写。
一、用来修饰数据,包括成员变量和局部变量,该变量只能被赋值一次且它的值无法被改变。
成员变量和局部变量的区别:
成员变量:是定义在类中,方法体之外的变量,该变量在创建对象时实例化。成员变量可以被类中的方法,构造方法和特定的类语句块访问。
局部变量:声明在方法体,构造方法和语句块中,方法执行时被创建,执行完成后被销毁。访问修饰符不可以用于局部变量中。局部变量只在声明它的方法,构造方法和语句块中被访问。
final 修饰的实例变量必须在非静态初始块、声明该实例变量或者构造器中指定初始值,而且只能在三个地方的其中之一指定,如果已经指定就不能再次指定。
例子:
final 修饰的类变量必须在静态初始块或者声明该实例变量中指定初始值,而且只能在两个地方的其中之一指定。
例子:
二、用来修饰局部变量,表示在变量的生存期中它的值不能被改变。
final修饰局部变量时,既可以在定义时指定默认值,也可以不指定默认值在后面赋值。
例子:
错误的写法:
说明:因为这里不能对final修饰的形参进行赋值的,它会在编写代码的时候发生错误。
public void test(final int num){num = 10;
}
三、修饰方法,表示该方法无法被重写。
例子:
public class FinalMethod {public final void testMethod(){ }
}
class SubClass extends FinalMethod{
public void testMethod(){
}
}
说明:首先定义一个final修饰的方法,然后再对这个方法进行重写,但因为由final修饰的类是不能被重写的,它在编辑代码的时候会报错,是无法被重写的。
四、修饰类,表示该类无法被继承。
例子:
public final class FinalClass {
}
class SubClass extends FinalClass{
}
说明:首先定义一个由final修饰的类,然后再继承这个类,但这里SubClass是无法继承 FinalClass的。因为由final 修饰的类是不可以被继承,还有String 类是final类,也是不可以被继承的,它在编辑代码的时候会报错。
Java的final修饰符相关推荐
- 有关于java的final修饰符
近期在学习java,今天看到final修饰符的问题,我书上有个很有意思的句子,如果用final修饰符修饰一个可变的对象的话,final修饰符只能让这个引用对象的变量不变,换言之,它指向的对象不变,但对 ...
- Java中final修饰符的理解
记录一下今天复习的final修饰符,其中 final类的成员方法隐式被final修饰部分 仅代表我个人理解 总结如下: final有三种使用方法: 1.final修饰类 final修饰类表示这个类不能 ...
- java 中final修饰的变量_java中final修饰符的使用方法
本文为大家分享了java中final修饰符的使用,供大家参考,具体内容如下 1.final修饰符的用法: final可以修饰变量,被final修饰的变量被赋初始值之后,不能对它重新赋值. final可 ...
- java final修饰符_java final修饰符详解,final修饰方法
之前给大家讲过java final修饰符final修饰变量方面的知识,那么下面要继续给大家讲到的就是final修饰方法方面的知识,一起来了解一下吧. final修饰的方法不能被重写,假如因为一些原因, ...
- 【Java】6.4 final 修饰符
目录 final 成员变量 final局部变量 final修饰基本类型变量和引用类型变量的区别 可执行"宏替换"的final变量 final方法 final类 不可变类 缓存实例的 ...
- java的final修饰_java final 修饰符详解
final修饰符究竟有什么作用,我们该如何使用,对我们的应用开发又能够起到什么作用,有java基础的肯定是不难说出final的几个用法, 1.被final修饰的变量在首次被初始化之后是不能够再次被赋值 ...
- java final修饰的类_java final修饰符使用总结,final修饰类详解
下面要继续给大家讲到的就是java final修饰符方面的知识,主要是java final修饰符使用总的一些总结,以及一些final修饰类方面的一些知识. java final修饰符使用总结 首先我们 ...
- java中final是修饰符么_Java final修饰符详解
final 在 Java 中的意思是最终,也可以称为完结器,表示对象是最终形态的,不可改变的意思.final 应用于类.方法和变量时意义是不同的,但本质是一样的,都表示不可改变. 使用 final 关 ...
- Java final修饰符的作用,Java中的final修饰符
1.什么时候可以选择final修饰符 如果想让一个类不被其他类继承,不允许在有子类,这时候就要考虑用到final来修饰. 2.用final修饰的类 首先大家要明白,用final修饰的类是不能被继承的, ...
- Java final修饰符详解
final 在 Java 中的意思是最终,也可以称为完结器,表示对象是最终形态的,不可改变的意思.final 应用于类.方法和变量时意义是不同的,但本质是一样的,都表示不可改变. 使用 final 关 ...
最新文章
- TP获取服务器mysql版本
- 什么从什么写短句_结婚纪念日发朋友圈说说 致自己结婚纪念日短句 一句话经典...
- MIT自然语言处理第二讲:单词计数(第一、二部分)
- 汉字转拼音php代码函数,php中将汉字转换成拼音的函数代码
- python中if语句的实例_对python中if语句的真假判断实例详解
- Springboot初次学习
- Datax-web 使用Python3 执行脚本
- java中删除特定后缀名文件
- 从零学ELK系列(十一):SpringBoot项目接入ELK超级版(超详细图文教程)
- “集百度AI技术之大成的终极硬件形态”发布
- python中options类_Python的OptionParser模块
- 获取GridView的BoundField值
- 3个开源TTS(一)—安装使用
- html 如何播放 dat音频,如何打开dat音频文件,教您如何打开dat音频文件
- Matlab三位曲线之plot3函数
- 【React】377- 实现 React 中的状态自动保存
- 2022世界杯不扩军!国足教练:机会来了
- Python-ppt增加图片
- 如何打造城市夜游景点文化IP
- java显示图片缩略图_java中生成图片的缩略图