#final作用
##对变量定义时使用final
代码为
public class finall1{
public static void main(String[] args){
final int a=1;
a=a+11;
System.out.println(a);
}
}
此时结果为无法为最终变量分配值
,出现错误。
但是当删除final后
public class finall1{
public static void main(String[] args){
int a=1;
a=a+11;
System.out.println(a);
}
}
此时程序可以正常运行,结果为12
。
##对方法使用final
原本程序为
public class finall2{
static int add(int a)
{
a=a+1;
return a;
}
public static void main(String[] args){
int a=2;
a=add(a);
System.out.println(a);
}
}
运行结果为:3
。
加上final以后
public class finall2{
final static int add(int a)
{
a=a+1;
return a;
}
public static void main(String[] args){
int a=2;
a=add(a);
System.out.println(a);
}
}
运行结果为:3
。
可以调用add方法,可以正常运行。
##对类用final
不能用来继承,但是可以正常运行,但是还不太熟悉继承,没能写出有效代码测试。
##总结
从网上查了一些final的知识,加上自己写了一代代码的感受。
- final修饰变量以后,变量不可以再改变
- final修饰方法,可以在一个类中正常运行,但是应该会在继承的时候,子类无法对该方法进行重写。
- final修饰类时,该类无法继承。
,可以在一个类中正常运行,但是应该会在继承的时候,子类无法对该方法进行重写。 - final修饰类时,该类无法继承。
- 即final即和它的英文名字一样,“最终的”,用了以后,被修饰的无法再更改。