java特性---多態
阿新 • • 發佈:2017-12-28
nbsp this setname pos static ext 類重寫 extend public
1 public class TestPolymorphic { 2 3 public static void main(String[] args) { 4 5 /*面向對象多態的特征分為兩種*/ 6 7 /*第一種是引用多態,表示父類可以指向本類引用,也可以指向子類引用*/ 8 Parent x = new Parent(); //指向本類引用 9 Parent s = new Child(); 10 11 /*但是子類不能指向父類引用*/ 12 //Child c = new Parent(); //這樣會報錯 13 14 /*第二2種是方法多態,創建本類對象時,調用的是本類的方法,創建子類對象時則調用的是子類重寫或者繼承的方法*/ 15 x.test(); //父類中的方法執行了!!! 16 s.test(); //子類中的方法執行了!!! 17 s.fn(); 18 } 19 20 } 21 22 class Parent { 23 private int age; 24 private String name; 25 publicint getAge() { 26 return age; 27 } 28 public void setAge(int age) { 29 this.age = age; 30 } 31 public String getName() { 32 return name; 33 } 34 public void setName(String name) { 35 this.name = name; 36 } 37 38 public void test() {39 System.out.println("父類中的方法執行了!!!"); 40 } 41 42 public void fn() { 43 System.out.println("子類並沒有這個方法,但是因為繼承所以也執行了"); 44 } 45 } 46 47 class Child extends Parent { 48 public void test() { 49 System.out.println("子類中的方法執行了!!!"); 50 } 51 }
java特性---多態