目录
一、final
1、定义
-
在Java中,final关键字有最终的,不可修改的含义
-
final 用于声明属性,方法和类
属性:定义就必须直接赋值或者在构造方法中进行赋值,并且后期都不能修改。
方法:定义必须有实现代码,并且子类里不可被覆盖。
类:不能被定义为抽象类或是接口,不可被继承。
2、修饰变量
如果某个变量被final修饰,那么该变量成为常量,不能被修改
-
常量在声明时必须初始化,声明之后不能对其进行二次赋值
-
赋值两种方式:构造方法赋值和声明时等号赋值
-
一些数学定理中的常量经常使用final修饰
eg:π= 3.14159265358979; E= 2.718281828459045;
-
在方法参数前面加final关键字,为了防止数据在方法体中被修改。
public class FinalTest {
//定义变量的时候,变量名所有字母大写,每个单词之间使用下划线
//1、定义常量直接赋值
public static final int USER_ROLE=1;
//final修饰属性,属性就是常量,不可二次改变赋值
//2、构造方法给常量赋值
//public static final int ADMIN_ROLE;
//当使用2的构造方法进行给常量赋值情况,不能使用static
public final int ADMIN_ROLE;
public FinalTest(int adminRole){
this.ADMIN_ROLE=adminRole;
}
private int num;
//成员变量,所有成员变量每个对象都会new一个对象开内存空间,常量值是不变的,没有必要为常量