在java中,當創建一個子類對象會不會先創建父類對象?(如果父類是抽象類呢?)

https://blog.csdn.net/banzhengyu/article/details/81039757

在java中,當創建一個子類對象會不會先創建父類對象?(如果父類是抽象類呢?)

提個問題:如果當創建一個子類對象會先創建父類對象的話,那麼如果父類是抽象類的話,那該抽象父類也會被實例化嘍,這與抽象類不能實例化相互矛盾啊!

package javase5;

public abstract class Animal {
	int age;
	
	public Animal() {
		this.age = 6;
		System.out.println("我是Animal類的無參構造函數");
	}
}
package javase5;

public class Cat extends Animal{
	
	public Cat() {
//		super(); 
//就算不寫super();這行代碼,系統也會默認自動調用父類的無參構造函數
		System.out.println("我是Cat類的無參構造函數");
	}

	public static void main(String[] args) {
		Cat cat = new Cat();
		System.out.println(cat.age);
	}

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章