使用final修饰过的变量都不可以改变;
1.final修饰变量
恒定不变的属性,可以用final关键字来修饰;
变量名建议全部使用大写
final修饰的变量不能改变,如果程序中重新赋值,编译报错
例子:
public class Asia {
public static final String SKIN_COLOR="黄色 ";
public static final int EYE_COUNT=2;
public static final Striung EYE_COLOR="黑色";
}
2.final修饰方法
任何继承类无法覆盖该方法;
重载不受限制
例子:
package com.java1995;
public class FinalMethodTest {
}
class Tree{
public final void develop(){
System.out.println("树在生长");
}
class Oak extends Tree{
// public void develop(){
// }//此时报错,因为父类中的develop()方法被final修饰了,方法不能进行重写
public void develop(int a){
}//此时不报错,因为final允许方法重载
}
}
3.final修饰类
该类不能被成为任何类的父类,不能被继承;
该类中的方法自动定义为final类型;
例子:
package com.java1995;
public class FinalClassTest {
}
class People{
}
class Man extends People{
}
//对比下面:
final class Color{
//final修饰Color类
}
class Red extends Color{
//此时编译器报错,因为Color类被final修饰,Red类不能继承Color类
}