Java基础之Final关键字
来源:互联网 发布:java 工程师要考吗 编辑:程序博客网 时间:2024/06/05 13:50
Final关键字可以理解为不可改变的,不可被继承的。
Final关键字可以修饰变量(成员变量、局部变量)、方法、类
1. final修饰变量
使用Final来修饰的变量,就是告知编译器这的数据是恒定不变的。
这个变量可以是基本类型,他往往是编译器常量,如果他是编译器常量,那么他就必须在定义的时候赋初值,通常用static final关键字类修饰他。
这个变量也可以是引用类型,这个时候就是说制定引用变量不可以指向另外的对象。但是需要注意的是,对象本身是可以改变的,我们可以使用另一个非final的、指向该对象的引用对对象进行修改。
需要注意的是,并不是说final定义的变量在编译器就可以知道它的值,比如一个随机数,只有在运行的时候才真正的知道它的值。
final关键字修饰成员变量,必须在定义出赋初值或者在构造器中赋初值。这就是说final变量在使用前就已经被初始化。
final关键字修饰局部变量,通常出现在方法参数上,当一个方法的参数是final修饰的,那么就是说,在这个方法的作用域内,都不可以改变参数引用所指向的对象。
2. final修饰方法
使用final来修饰方法的直接原因就是阻止继承关系中的子类重写。如果你的方法不希望将来这个类的子类修改了方法的含义,那么就用final将他锁定起来吧。
注意:据说在以前使用final来修饰方法还有一个原因就是提升效率...
3. final修饰类
定义为final的类,往往是作者不打算自己或者其他任何人继承这个类,别人对这个类的设计不需要做任何修改,总之,finall类是不可被继承的
注意:我们上文说的final方法是非覆盖的含义,那么,final类中的方法默认的都是final修饰的,因为final类是非继承,因此他的方法必定不会被重写。
- java基础之final关键字
- JAVA基础之final关键字
- Java基础之Final关键字
- Java基础之final关键字
- java基础之final关键字
- Java 基础之(六) final关键字
- java基础关键字之Static和final
- java基础之final关键字作用
- java基础语法之final关键字
- java基础(三)之final关键字
- Java基础: 关键字 final
- final关键字 -----JAVA基础-------
- Java基础----final关键字
- [Java基础] final关键字
- java基础-final关键字
- java基础--final关键字
- JAVA 基础 final关键字
- [java基础]final关键字
- java后台系统实现动态新闻列表实时更新
- CMake如何查找链接库---find_package的使用方法
- PAT 1060 Are They Equal?
- 技术积累
- Margin叠加问题
- Java基础之Final关键字
- web HTML 标签
- 四皇后问题的回溯
- 2017.3.11 杭电校赛
- 用SpannableString打造绚丽多彩的文本显示效果
- pat-列车调度
- Android自动建立表格
- 83-自己实现互斥锁
- C++实验9