总结构建子类对象时的顺序

 1 package com.hanqi;
 2 
 3 public class Animao {
 4     private String name;
 5     private int age;
 6 
 7     public Animao()
 8     {
 9         
10     }
11     public void cry ()
12     {
13         System.out.println("动物发出叫声!");
14     }
15     public void run ()
16     {
17         System.out.println("跑");
18     }
19     public String getName() {
20         return name;
21     }
22     public void setName(String gou) {
23         this.name = gou;
24         System.out.println("名字为"+name);
25     }
26     public int getAge() {
27         return age;
28     }
29     public void setAge(int age) {
30         this.age = age;
31         
32         System.out.println("年龄为"+age);
33     }
34 }
 1 package com.hanqi;
 2 
 3 public class Dog extends Animao {
 4 
 5     private String name;
 6     private int age;
 7     
 8     public Dog(){
 9         
10     }
11     public void cry ()
12     {
13         System.out.println("狗发出“汪汪”声!");//子类重写父类第二个方法
14     }
15 }
 1 package com.hanqi;
 2 
 3 public class Dog2 {
 4 
 5     public static void main(String[] args) {
 6         // TODO 自动生成的方法存根
 7 
 8         Dog r=new Dog();
 9         
10         Animao f=new Dog();//向上转型 
11         
12         f.cry();  //调用这个方法
13         
14         f.setName("小白");
15         
16         f.setAge(16);
17     }
18 
19 }

狗发出“汪汪”声!
名字为小白
年龄为16

总结:子类构造时调用父类的构造方法

原文地址:https://www.cnblogs.com/crazy-zw/p/5147022.html