Java 类的继承规则
- 子类继承父类的公有属性和方法
- 子类可以增加属性和方法
- 子类可以覆盖父类的属性和方法
- 子类可以重载父类的方法
- 子类可以初始化父类对象
 
1 1 package com.org.cqust.ClassGroup; 2 2 3 3 public class Person { 4 4 private String name; 5 5 6 6 public String getName() { 7 7 return name; 8 8 } 9 9 10 10 public void setName(String name) { 11 11 this.name = name; 12 12 } 13 13 public void Show() 14 14 { 15 15 System.out.println("I am a PERSON,my name is:"+name); 16 16 } 17 17 18 18 } 19 20Person 21 22  23 24 1 package com.org.cqust.ClassGroup; 25 2 26 3 public class Student extends Person {//继承了父类的公有方法和属性 27 4 // 28 5 private String Sno; 29 6 30 7 public String getSno() { 31 8 return Sno; 32 9 } 33 10 34 11 public void setSno(String sno) { 35 12 Sno = sno; 36 13 } 37 14 38 15 public void ShowStudent() 39 16 { 40 17 super.Show();//父类方法 41 18 System.out.print("My Student No Is"+Sno); 42 19 } 43 20 public void Show()//和父类相同(名称,参数相同),就会覆盖父类方法 44 21 { 45 22 super.Show();//父类方法 46 23 System.out.print("My Student No Is"+Sno); 47 24 } 48 25 49 26 } 50 51Student 52 53  54 55 1 package com.org.cqust.MainTest; 56 2 57 3 import com.org.cqust.ClassGroup.*; 58 4 59 5 public class MainTest { 60 6 public static void main(String[] args){ 61 7 /* 62 8 * 子类继承父类的公有属性和方法 63 9 子类可以增加属性和方法 64 10 子类可以覆盖父类的属性和方法 65 11 子类可以重载父类的方法 66 12 子类可以初始化父类对象 67 13 * */ 68 14 //Usage 3:数组的使用 69 15 Person[] ps=new Person[5]; 70 16 ps[0]=new Student(); 71 17 ps[1]=new Person(); 72 18 73 19 ps[0].Show(); 74 20 System.out.println("------------------"); 75 21 ps[1].Show(); 76 22 77 23 // 78 24 // //Usage 2:子类可以初始化父类对象,父类对象只能调用父类拥有方法和属性。 79 25 // Person P=new Student(); 80 26 // P.setName("ZhangSan"); 81 27 // P.Show();//子类有的方法,父类同样有,则调用子类方法 82 28 // 83 29 // 84 30 //用法1,独立使用 85 31 // Student S=new Student(); 86 32 // S.setName("ZhangSan"); 87 33 // S.setSno("20170001"); 88 34 // //S.Show(); 89 35 // S.ShowStudent(); 90 36 91 37 // Person p=new Person(); 92 38 // p.setName("ZhangSan"); 93 39 // p.Show(); 94 40 } 95 41 96 42 } 97 98测试代码