1、final概念
final可以修饰变量或者方法。在某些情况下,程序员可能有以下需求:
a、当不希望父类的某个方法被子类覆盖(override)时,可以用final关键字修饰。
b、当不希望类的某个变量的值被修改,可以用final修饰。如果一个变量是final,则必须赋初值,否则编译出错。
c、当不希望类被继承时,可以用final修饰。
//final方法的使用[Demo128.java] public class Demo128 { public static void main(String[] args) { Aaa aaa=new Aaa(); aaa.show(); Bbb bbb=new Bbb(); bbb.show(); } } class Aaa{ int a=0;//如果a不赋初值,a是0。定义类型后应赋值 //圆周率不让修改 //带有final修饰的变量命名时应有_下划线来区分表示。这是java程序员的标准。 final float reate_1=3.1415926f;//使用final可以保证,需要强制不被修改的数据一定要用final锁定 //final int b; //使用final定义变量时一定要赋初值否则报错。 //b=1; final public void sendMes(){//给成员方法用final来修饰则表示不可以被修改,不可被覆盖。 System.out.println("发送消息"); } public void show(){ System.out.println("a="+a); } } final class Bbb extends Aaa{//定义类前加final表示该类不允许被继承 public Bbb(){ a++; //reate_1=reate+1; } /*public void sendMes(){ System.out.println("发送消息") }*/ }
final--注意事项
1、final修饰的变量又叫常量,一般用XX_XX_XX来命名。(带下划线)
2、final修饰的变量在定义时,必须赋值,并且以后不能再赋值。
final--什么时候用
1、因为案例的考虑,类的某个方法不允许修改。
2、类不会被其它的类继承。
3、某些变量值是固定不变的,比如圆周率3.1415926