Java 类的继承规则
- 子类继承父类的公有属性和方法
- 子类可以增加属性和方法
- 子类可以覆盖父类的属性和方法
- 子类可以重载父类的方法
- 子类可以初始化父类对象
1 package com.org.cqust.ClassGroup; 2 3 public class Person { 4 private String name; 5 6 public String getName() { 7 return name; 8 } 9 10 public void setName(String name) { 11 this.name = name; 12 } 13 public void Show() 14 { 15 System.out.println("I am a PERSON,my name is:"+name); 16 } 17 18 }
1 package com.org.cqust.ClassGroup; 2 3 public class Student extends Person {//继承了父类的公有方法和属性 4 // 5 private String Sno; 6 7 public String getSno() { 8 return Sno; 9 } 10 11 public void setSno(String sno) { 12 Sno = sno; 13 } 14 15 public void ShowStudent() 16 { 17 super.Show();//父类方法 18 System.out.print("My Student No Is"+Sno); 19 } 20 public void Show()//和父类相同(名称,参数相同),就会覆盖父类方法 21 { 22 super.Show();//父类方法 23 System.out.print("My Student No Is"+Sno); 24 } 25 26 }
1 package com.org.cqust.MainTest; 2 3 import com.org.cqust.ClassGroup.*; 4 5 public class MainTest { 6 public static void main(String[] args){ 7 /* 8 * 子类继承父类的公有属性和方法 9 子类可以增加属性和方法 10 子类可以覆盖父类的属性和方法 11 子类可以重载父类的方法 12 子类可以初始化父类对象 13 * */ 14 //Usage 3:数组的使用 15 Person[] ps=new Person[5]; 16 ps[0]=new Student(); 17 ps[1]=new Person(); 18 19 ps[0].Show(); 20 System.out.println("------------------"); 21 ps[1].Show(); 22 23 // 24 // //Usage 2:子类可以初始化父类对象,父类对象只能调用父类拥有方法和属性。 25 // Person P=new Student(); 26 // P.setName("ZhangSan"); 27 // P.Show();//子类有的方法,父类同样有,则调用子类方法 28 // 29 // 30 //用法1,独立使用 31 // Student S=new Student(); 32 // S.setName("ZhangSan"); 33 // S.setSno("20170001"); 34 // //S.Show(); 35 // S.ShowStudent(); 36 37 // Person p=new Person(); 38 // p.setName("ZhangSan"); 39 // p.Show(); 40 } 41 42 }