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

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

java中實現類實現了接口,創建對象為什么還要寫成 接口 對象名 =new 類名?

實現類 對象名 = new 類名

接口 ? ?對象名 = new 類名

有什么區別?

正在回答

2 回答

多寫幾個類實現接口,在實現類中分別寫幾個接口中沒有的方法,然后使用

接口 對象名 = new 類名;?

類名 對象名 = new 類名;

實例化對象調用方法,你就會發現使用接口 對象名 = new 類名; 方式實例化的對象只能調用接口中有的方法,而不能調用類中特有的方法。而使用類名 對象名 = new 類名;方式創建出來的對象可以調用所有的方法

使用接口編程的好處是統一規范化。

你會發現無論多少個實現類,無論這些實現類有什么不同,使用接口 對象名 = new 類名; 方式實例化對象都可以調用接口中定義的方法,

3 回復 有任何疑惑可以回復我~
#1

抓娃小白手 提問者

懂了 謝謝
2017-02-25 回復 有任何疑惑可以回復我~

[借用百度知道的提問]

Interface B{
public void show();

}
class A implements B{
public void show(){
System.out.println("123");

}

}
main(){
B b =new A(); //正確的應該是這樣的

System.out,println(b.show());

}

我想問的是:把上面的B b =new A(); 改成 A a = new A(); 上面的A也實現了接口B,為什么不能直接創建A的對象呢? 并且我用 A a = new A();編譯過,同樣能打出123?

為什么一定要是: 接口 對象名 = new 類名; 的形式,?
而不能是: 類名 對象名 = new 類名; 的形式?

求大神~~~

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

抓娃小白手 提問者

不太理解這用法的區別
2017-02-22 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

java中實現類實現了接口,創建對象為什么還要寫成 接口 對象名 =new 類名?

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

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

幫助反饋 APP下載

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

公眾號

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