如何使用final?
来源:互联网 发布:sql字段别名 编辑:程序博客网 时间:2024/05/21 13:57
使用final前,我们得对final有一定的了解才能进行使用。
final变量
final关键字在声明了变量之后,就不可以再改变该变量的值,通常由final定义的变量为常量。final除了可以修饰基本数据类型的常量,还可修饰对象的引用,数组可以看成一个修饰对象的引用,所以final可以用来修饰数组。一旦一个对象引用被修饰成final之后,它就只能恒定指向一个对象,无法将其改变指向另外一个对象,一个既是static又是final修饰的字段只占据一段不能改变的存储空间。
final方法
final方法不能被重写。
将方法声明为final,那就说明你已经知道这个方法提供的功能已经满足你要求,不需要进行扩展,并且也不允许任何从此类继承的类来覆写这个方法,但是继承仍然可以继承这个方法,也就是说可以直接使用。另外有一种被称为inline的机制,它会使你在调用final方法时,直接将方法主体插入到调用处,而不是进行例行的方法调用,例如保存断点,压栈等,这样可能会使你的程序效率有所提高,然而当你的方法主体非常庞大时,或你在多处调用此方法,那么你的调用主体代码便会迅速膨胀,可能反而会影响效率,所以你要慎用final进行方法定义。
注意:
父类 private final 方法1();
子类 private final 方法1();当然子类是extend是父类的
那么在调用方法1时,父类会被覆盖吗?不会,final方法没有被覆盖,子类中没有被重写。子类中无法被正常覆盖,而是生成了一个新的方法。
final类
当你将final用于类身上时,你就需要仔细考虑,因为一个final类是无法被任何人继承的,并且不允许其他人对这个类进行改动。那也就意味着此类在一个继承树中是一个叶子类,并且此类的设计已被认为很完美而不需要进行修改或扩展。
对于final类中的成员变量,你可以定义其为final,也可以不是final。而对于方法,由于所属类为final的关系,自然也就成了final型的。你也可以明确的给final类中的方法加上一个final,但这显然没有意义。
0 0
- 如何使用final?
- final 修饰符 如何使用?
- Java中static与final如何使用
- final 使用
- 如何使用 volatile, synchronized, final 进行线程间通信
- 在Java中,final修饰符要如何使用?
- final、static使用总结
- final关键字使用
- final、static使用总结
- final、static使用总结
- java final的使用
- final的使用
- final关键字的使用
- final关键字的使用
- Java final使用总结
- final 关键字的使用
- Java final关键字使用
- final、static使用总结
- org.springframework.beans.BeanUtils.copyProperties方法的泛型问题。
- 2.Google RPC-线程池
- Android 从路径中提取文件名
- eclipse中配置jdk
- HR:你该如何调薪加薪?
- 如何使用final?
- 第3周项目4——为了语文数学的学生
- 计算机组成原理 —计算机是如何工作的
- 浅谈Java分布式计算
- hadoop中MapReduce多种join实现实例分析
- 《Linux内核分析》(四)——扒开系统调用的三层皮(上)
- C++第六题20150329
- 【Android开发】布局管理器-线性布局
- 15第三周项目五——数组作数据成员(3)