final:用来修饰类,成员和局部变量,不能被改变
修饰类:不可以被继承,但可以继承别的类
修饰成员方法:子类不可以重写父类中被final修饰的方法,但可以重写一般方法之后加上final
修饰成员变量:常量,只能赋值一次,可以显性赋值也可以在构造方法中赋值(只有在这两个地方赋值)
修饰局部变量:赋值一次
package com.oracle.Demo01; //final修饰的类不能被继承但可以继承别的类 public final class Fu extends Fu2 { }
package com.oracle.Demo01; //final 修饰的<成员变量>必须在创建对象前赋值 不能为系统内存默认值 public class Fu2 { private final int a = 1; public final void method(){ System.out.println("被final修饰的方法"); } public void method2(){ System.out.println("普通方法"); } }
package com.oracle.Demo01; public class Zi extends Fu2{ public final void method2(){ System.out.println("这是Zi的普通方法"); } }
package com.oracle.Demo01; public class Test { public static void main(String[] args) { // TODO Auto-generated method stub Zi z = new Zi(); z.method(); z.method2(); } }