2015-07-19 121 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

相关问题