亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

問一個關于多態和繼承相關的問題。

public?abstract?class?Shape?{
	public?abstract?void?getPerimeter();
	public?abstract?void?getArea();
?}

這是我先實現的一個抽象的父類Shape;

public?class?Rectangle?extends?Shape?{
	int?length;
	int?wide;
	public?void?getPerimeter()?{
	????????System.out.println("矩形的周長為:"+(length+wide)*2);
	?}
	?public?void?getArea()?{
	?	System.out.println("矩形的面積為:"+length*wide);	
	?}
}

這是我實現的一個繼承Shape父類的一個子類Rectangle;

現在我用多態的方法 Shape rectangle = new Rectangle();? 用父類引用子類

public?class?Initial?{
	public?static?void?main(String[]?args)?{
	Shape?rectangle?=?new?Rectangle();
	rectangle.length?=?10;
	rectangle.width?=?5;
	Shape?circle?=?new?Circle();
????}
}

那么問題來了,我要怎樣才能給子類中的length和width賦值?

我上面的那兩個賦值是錯的;

希望你能幫我

正在回答

2 回答

這個問題出現的原因可以在eclipse的報錯說明里面找到,大概就是Shape類中沒有length和width這兩個變量,所以無法進行賦值.

我們可以在Shape類中加上這兩個變量,或者將第三段代碼的第三行用如下代碼替代:

Rectangle?rectangle?=?new?Rectangle();


0 回復 有任何疑惑可以回復我~

你可以在子類里面給他賦值?如?int?lenght=10;int?wide=5;這樣就引用進去了

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Java入門第二季 升級版
  • 參與學習       531143    人
  • 解答問題       6326    個

課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙

進入課程

問一個關于多態和繼承相關的問題。

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號