2015-07-19 61 views
0

我創建了一個接口和一個堆棧。現在我可以通過該接口的引用或直接調用堆棧。我無法理解爲什麼我應該參考參考路線。我所指的這本書說它的運行時間實現更好。請有人解釋它運行時間和編譯時間確定的區別

+1

您需要了解動態多態。發佈一些僞代碼比用簡單的英語解釋更好。 –

回答

0

我不確定你所指的實際代碼,但使用接口的好處是這樣的。你可以看到,我們可以爲每種類型準備堆棧以接受每種需要的類型,而且還可以通過相同的接口訪問它。實際上,這個決定,實現方法是通過接口調用的,是由編譯時生成的,所以我不確定它是否回答你的問題。

如果你知道你只能堅持一個實現,那麼使用接口是沒有用的。 (但是很少發生這種軟件是作爲實際應用開發的)

順便說一句,如果你正在實現Stack,我相信最好使用比你自己實現的更爲人所知的interface。 ;)

+0

我的意思是說,我在界面中創建並實現了兩個類。 然後,我分別創建兩個類的對象,而不是通過對象調用它們的方法,我可以通過接口引用調用它們。在什麼情況下使用哪個? 'public class stackdemo {0} {0} {0} public static void main(String args []) { shell1 s; //接口 A ob1 = new A(); B ob2 = new B(); s = ob1; ob1.fixed(10); (15); ob2.init(15); (5); //通過接口 s.push(3); s.pop(); (11); //直接調用對象 ob2.pop(); } } ' –

+0

想想另一個有你的堆棧的類。新類可以通過堆棧接口保存'A'堆棧或'B'堆棧。 (從你的例子中,它'shell1') – shinpei

相關問題