JAVA@final

@Source :《Think in Java》 ch.7

 

final:“ 无法改变的” ,不想改变的理由是 设计或者效率。

用到final的三种情况:数据、方法和类。

一、数据
 常 量定义:public static final空白final:声明为final但未给定初始值。可以再构造器中用表达式对final进行赋值。编译器都确保空白final在使用前必须被初 始化。final参数:无法再方法中更改参数引用所指向的对象。这一特性主要用来想匿名内部类传递数据。

二、方法
使用final方法的原因:一是方法锁定,以防止任何继承类修改它的定义;二是效率,在使用java SE5/6时,应该让编译器和JVM去处理效率问题,只有在想要明确禁止覆盖时,才将方法设置为final

所有private 方法都隐式地指定是final的。

“覆盖”只有在某方法是基类的接口的一部分时才会出现。即,必须能将一个对象向上转型为它的基本类型并调用相同的方法。

三、类
final类不能被继承

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值