final 关键词
修辞类 类不能被继承
修辞成员变量 变量不能被改变
修改方法 方法无法覆写
变量如果是基本类型 是值 不能被改变
引用类型,地址不变,但是属性值可以改变
1 class Person{ 2 private String name; 3 private int age; 4 // final int age = 1; 5 6 public Person(){ 7 8 } 9 10 public Person(String name , int age){ 11 this.name = name; 12 this.age = age; 13 14 } 15 16 public void setName(String name){ 17 this.name = name; 18 } 19 20 public String getName(){ 21 return name; 22 } 23 24 public void setAge(int age){ 25 this.age = age; 26 } 27 28 public int getAge(){ 29 return this.age; 30 } 31 32 final public void fu(){ 33 34 } 35 36 37 } 38 39 40 class Student extends Person{ 41 public Student(){}; 42 43 public Student(String name ,int age){ 44 super(name,age); 45 // this.name = name; 46 // this.age = age; 47 } 48 public void study(){ 49 System.out.print(getName()); 50 } 51 52 // public void fu(){ 53 // System.out.print("q"); 54 // } 55 } 56 57 class Teacher extends Person{ 58 public Teacher(){}; 59 60 public Teacher(String name,int age){ 61 super(name,age); 62 } 63 64 public void teach(){ 65 System.out.print("teach"); 66 } 67 68 69 } 70 71 class Demo2{ 72 public static void main(String[] args) { 73 Student s = new Student(); 74 s.setName("pan"); 75 s.setAge(20); 76 s.study(); 77 78 final Student s1 = new Student("li",20); 79 s1.setAge(40); 80 s1 = new Student("ki",78); 81 System.out.println(s1.getAge()); 82 83 } 84 }
1 class Teacher extends Person{ 2 3 final int age; // 无效.必须是赋值,默认值不行 4 5 public Teacher(){}; 6 7 public Teacher(String name,int age){ 8 super(name,age); 9 } 10 11 public void teach(){ 12 System.out.print("teach"); 13 } 14 15 16 }
原文:http://www.cnblogs.com/panw3i/p/6354081.html