就可伸缩性而言,从具体类或接口制作对象会更明智吗?
例如,而不是:
LinkedStack<Integer> list = new LinkedStack<Integer>();
应该是这样的:
StackInterface<Integer> list = new LinkedStack<Integer>();
答案 0 :(得分:0)
在我看来:
LinkedStack<Integer> list = new LinkedStack<Integer>();
如果您需要LinkedStack上未在StackInterface
中声明的特定方法,则更好 。
StackInterface<Integer> list = new LinkedStack<Integer>();
如果不这样做会更好,因为那时你可以出于不同的原因“插入”接口的任何实现者(例如效率原因)。
答案 1 :(得分:0)
第二种方式称为接口代码。
第二种方式是可以令人难以置信的。使用interface作为子类对象的引用。