/*final可以修饰变 量 , 方法 , 类 ,
*该修饰符类似于C++ 中const的作用产生一种类似锁定的效果,一般对数据起保护作用,
*这是我的理解,可能会有错,欢迎提出错误。
*修饰变量时:在进行第一次赋值之后将其锁定。
*修饰类时:不允许该类被继承
*修饰方法:不允许该方法被重写(覆盖)*/
//*******变量示例**************
final int a=0;//第一次赋值
a=3+9; // 第二次赋值, 编译器报错 ,无法再赋值。
//************方法示例************
public class Animal { // 父类
final public void eat() { //父类方法加了final修饰符
System.out.println("动物吃肉");
}
}
public class Dog extends Animal { // 子类
public void eat() { // 编译器报错 ,无法覆盖父类方法
System.out.println("狗吃肉");
}
//************类示例************
final public class Animal { // 父类加了final修饰符
final public void eat() { //
System.out.println("动物吃肉");
}
}
public class Dog extends Animal { // 编译器报错, 子类 加extends继承无效
}