彥舜籌備出書中:繼承關係中抽象類中,普通方法中調用被子類覆寫的抽象方法

package cm.abstracts.application;

//這個類用來測試:在抽象類的普通方法中調用抽象方法
public class InstanceFfourtyFive {
	public static void main(String[] args) {
		//有構造方法不一定有對應的抽象方法,有抽象方法必有對應的構造方法
		//通過子類實例化抽象類對象
		Love l = new Hate();
		//直接調用抽象類中定義的抽象方法,其具體內容已經過子類覆寫
		l.diaoChou();
	}
}

//創建抽象模板類:父類,必有子類,關鍵字abstract
abstract class Love{
	//對類中程序自動創建的隱式構造方法,要習慣性創建,養成一種良好習慣
	public Love() {}
	
	//創建抽象類中的普通方法,並在此抽象類的此普通方法中調用抽象方法
	/**	抽象類中可以定義普通方法,最爲關鍵的是,這些普通方法可以直接調用抽象類中定義的抽象方法,而具體的抽象方法是經過子類覆寫的	*/
	protected void diaoChou() {
		//經過子類覆寫的抽象方法的具體內容
		this.love();
	}
	
	//抽象類中定義的抽象方法
	public abstract void love();
}

//創建子類:抽象類必有子類,一個子類只能有一個抽象類(父類)
class Hate extends Love{
	//對類中程序自動創建的隱式構造方法,要習慣性創建,養成一種良好習慣
	public Hate() {}
	
	@Override  //備註:中文意思覆寫、重寫、覆蓋,重寫抽象類中的同名抽象方法
	/**	抽象類中可以定義普通方法,最爲關鍵的是,這些普通方法可以直接調用抽象類中定義的抽象方法,而具體的抽象方法是經過子類覆寫的	*/
	//經過子類覆寫的抽象方法的具體內容
	public void love() {
		System.out.println("問世間情爲何物,直教人生死相許");
		System.out.println("我愛誰,誰愛我,我還能愛誰");
		System.out.println("誓要出書,哪怕自費,字數最起碼幾十萬,近百萬");
	}
	
}

彥舜原創,首發

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