java特性---多态

 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     public int 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 }
原文地址:https://www.cnblogs.com/xiyangcai/p/8135477.html