package day9;

/**
* Created by admin on 2018/11/17.
* final可以修饰类,方法,变量

特点:
final可以修饰类,该类不能被继承。
final可以修饰方法,该方法不能被重写。(覆盖,复写)
final可以修饰变量,该变量不能被重新赋值。因为这个变量其实常量。

常量:
A:字面值常量
"hello",10,true
B:自定义常量
final int x = 10;
final修饰变量的初始化时机
A:被final修饰的变量只能赋值一次。
B:在构造方法完毕前。(非静态的常量)
*/
public class FinalDemo {
public static void main(String[] args) {
Zi2 z = new Zi2();
z.show();
Demo d = new Demo();
System.out.println(d.num + d.num3);
}
}

class Fu2{
public int num = 10;
public final int num2 = 20;

}
class Zi2 extends Fu2 {

public void show(){
num = 100;
System.out.println(num);
//无法为最终变量num2 分配值
//num2 = 200;
System.out.println(num2);
}
}
class Demo {
int num;
final int num3;
public Demo() {
num = 100;
num3 = 300;
}

}