final 常量修饰符(final 最终的)
1.被 final 修饰的称之为常量,被修饰的变量或对象或方法不能被改变,比如被 final 修饰的变量就不允许改变
2.final 修饰的对象的命名规则要求大写
比如 NAME
当使用多个单词拼接时,使用下划线“_”拼接
比如 MY_NAME
3.类的构造方法无法被修饰,也无法被重写
4.用final修饰类,类无法被继承,但是类中的内容并不被final修饰
1.修饰变量或对象
public class Demo01 {
public static void main(String[] args) {
final int I = 100;
}
}
1.使用 final 修饰了 i 之后,在下面的代码中,无法再对 i 进行修改,如果对 i 进行修改,编译器直接报错
2.如果对 i 进行定义的的时候没有对 i 进行赋值,那么之后也无法再对 i 进行赋值和修改
2.final修饰方法
使用 final 修饰方法时,可以被重载,不能够被重写,因为重写相当于用子类的方法覆盖父类的方法,而final
关键字无法被修改,所以无法重写父类方法
例如
public class Demo01 {
public static void main(String[] args) {
a();
a(1);
}
public static final void a(){
System.out.println("静态方法");
}
public static void a(int i){
System.out.println("重写静态方法");
}
}
输出结果
静态方法
重写静态方法
3.final修饰类
创建 Demo02
public final class Demo02 {
int num = 0;
public void setNum(){
num=10;
System.out.println(num);
}
}
使用Demo02
public class Demo01 {
public static void main(String[] args) {
Demo02 d = new Demo02();
d.setNum();
}
}
输出结果
10
所以,使用final修饰类,类可以正常使用,但是注意,final修饰的类不能被继承