JAVA中final

作用于:属性,方法,类

A属性

1)一个 永不改变的编译时常量

2)一个在运行时被初始化的值,而不希望他被改变

3)一个既是static又是final的域只占据一段不能改变的存储空间

4)对于基本类型 final数值恒定不变

5)对于对象引用 final使引用很定不变(一旦引用被初始化指向一个对象,就无法再把它改为指向另一个对象。但是对象自身却是可以被修改的)

6)java并未提供使任何对象恒定不变的途径

B空白final

1)指被声明为final但尤为给定初值的域。

2)在使用前必须被初始化。

3)一个类中的final域就可以做到根据对象而有所不同,却又保持其恒定不变的特性

C参数

1)意味着无法在方法中改变参数引用所指向的对象

2)主要用来向匿名内部类传递数据

D方法

1)把方法锁定,以防任何继承类修改它的含义(确保在继承中使方法行为保持不变,并且不会被覆盖)

2)效率问题(早期)

F final和private关键字

1)类中所有的private发放都隐式地指定为final的。

2)可以对private方法添加final修饰词,但并不能给方法增加任何额外的意义。

G类

1)不能被继承

2)final类中所有的方法都是隐式指定为final的,因为无法覆盖它们。

3)在final类中可以给方法添加final修饰词,但不会有任何意义。

你可能感兴趣的:(JAVA中final)