Java 中的繼承

          日復一日,年復一年。一個曾經如此天真無暇的孩子如今變得老練成熟,是什麼改變了他呢?是時間,時間真是把殺豬的刀啊!

今天我有幸看到一篇非常好的博文,自己學習到了很多,然後結合自己的理解在這裏跟大家分享:

繼承:

如果大家有學過面向對象的編程語言,那麼對這一概念就會非常的清楚:

      


下面給大家演示代碼:

public class Animal {
	private String name;
	private String type;
	
	Animal(){
		System.out.println("Animal Father(no value):");
	}
	Animal(String name,String type){
		this.name=name;
		this.type=type;
		System.out.println("Animal Father(two value):"+"myname"+name+"I belong to:"+type);
	}
	

}

public class Bird extends Animal{
	
	private String song;
	
	Bird(){
		System.out.println("Bird Father(no value):");
	}
	Bird(String name,String type){
		//super(name,type);
		System.out.println("Bird Father(two value):"+"I`m"+name+","+"I blong to"+type);
	}
	Bird(String song){
		this.song=song;
		System.out.println("Bird Father(one value):"+"I can"+song);
	}
	
}

public class MQ_bird extends Bird {

	MQ_bird(){
		System.out.println("hello,I`a small MQ_bird.........");
	}
	MQ_bird(String name,String type){
		//super(name,type);
		System.out.println("I`m"+name+","+"I blong to"+type);
	}
	MQ_bird(String name,String type,String song){
		System.out.println("I`m"+name+","+"I blong to"+type+","+"I can"+song);
	}

}

public class main {
	public static void main(String[] args)  
    {  
		
		new MQ_bird();----------------------------------------------(1)
		//new MQ_bird("MQ","brid type");----------------------------(2)
		//new MQ_bird("MQ","brid type","songing");------------------(3)
    }  
}
</pre><pre name="code" class="java">下面是以上三個輸出的結果:
<pre name="code" class="html">(1)
Animal Father(no value):
Bird Father(no value):
hello,I`a small MQ_bird.........

(2)
Animal Father(no value):
Bird Father(no value):
I`mMQ,I blong tobrid type

(3)
Animal Father(no value):
Bird Father(no value):
I`mMQ,I blong tobrid type,I cansonging




我想大家都比較清楚的看出了,但是有一點需要注意,如果在實例化對象的時候,他會默認的調用父類的無參構造函數,但是當你使用了super的話,他就會根據你的需求去調用相應的父類的構造函數。


每日勵志:


所謂天才,只不過是把別人喝咖啡的功夫都用在工作上了。—— 魯  迅


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