Java学习——final关键字

Java中final被称为终结器,可以使用final来定义类、方法、属性。

1.final修饰类(体现一种保护性)

当一个类用final关键字定义后,表示该类不允许被继承(这里的继承说的是不能使用extends关键字来继承,但是一个外部类有一个用final修饰的内部类时,这个外部类是可以继承的,同时用final修饰的内部类也被继承了)。同时该类中所有的方法都会被隐式地加上final关键字(不包含成员变量)。

Java中String类以及8大数据类型的包装类(如Integer)都是final类。

2.final修饰方法

当一个方法被final修饰后,表示该方法不允许被重写。

final方法常用于模板方法(也体现了保护性)。

3.final修饰属性

当属性被final修饰后,表示该属性值不可变,并且该属性要在声明时初始化。

初始化方式:声明时初始化、构造方法里初始化、构造块里初始化。

1)final修饰基本数据类型变量(99%)

类中常量一般使用final+static,描述全局常量。

2)final修饰引用数据类型变量(不常用)

注意:当使用 +、-、*、/、%、运算操作时,遵循如下规则:
只要两个操作数中有一个是double类型的,另一个将会被转换成double类型,并且结果也是double类型,如果
两个操作数中有一个是float类型的,另一个将会被转换为float类型,并且结果也是float类型,如果两个操作
数中有一个是long类型的,另一个将会被转换成long类型,并且结果也是long类型,否则(操作数为:byte、
short、int 、char),两个数都会被转换成int类型,并且结果也是int类型。但是final修饰的域类型不会发生变化。

猜你喜欢

转载自blog.csdn.net/eve8888888/article/details/83186766