final:指最终的意思。
一、修饰类
被final修饰的类不能被子类继承。
案例:
//父类Animal
public final class Animal{
private int age; //年龄
private String var; //品种
public void eat(){
System.out.println("吃东西");
}
}
//子类cat
public class cat extends Animal{ //编译时会报错,编译不通过。
public void eat(){
System.out.println("吃鱼");
}
}
二、修饰成员方法
被final修饰的成员方法不能被重写。
案例
//父类Animal
public class Animal{
private int age; //年龄
private String var; //品种
public final void eat(){ //成员方法
System.out.println("吃东西");
}
}
//子类cat
public cat extends Animal{
public void eat(){ //重写父类方法。编译时会报错,编译不通过。
System.out.println("吃鱼");
}
}
三、修饰基本变量类型
被final修饰的变量只能被赋值一次。
案例
public class Animal{
public static void main(String str){
private int i = 10;
i = 20; //编译时,此处报错。
System.out.println(i);
}
}
四、修饰引用变量
被修饰引用的变量只能指向对象一次。
案例
public class Animal{
public static void main(String str){
final Cat c;
c = new Cat();
c = new Cat();
}
}
public class Cat{
private String var;
private int age;
public void eat(){
System.out.println("吃鱼");
}
}
五、修饰常量
格式:public static final int I = 10;
修饰公开的,能直接访问的常量。