超类和子类各自具有自己的接口

Dänu:

可以吗?(请记住,我没有编写类的主体,也没有编写接口;-))

abstract class SuperClass implements SuperInterface

class SubClass extends SuperClass implements SubInterface

还是一般认为这是不良做法?

让我感到奇怪的是,以下这些无效:

List<SubInterface> myList;
...
for(SuperInterface si : myList) {
    ...
}
麦克尔:

既不是好事也不是坏事。SubClass这里实现了SuperInterfaceSubInterface(以及由SuperClasspublic方法定义的接口)。如果那是您的需要-很好。

至于你的第二个例子

List<SubInterface> myList;
...
for(SuperInterface si : myList) {
    ...
}

您声明了SubInterface元素列表,但想从中获取SuperInterface元素。如果SubInterface扩展,SuperInterface那么这有一定意义。否则不行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

具有子类数据的超类方法

子类和超类

具有超类和子类的Swift协议扩展方法分派

IncompatibleClassChangeError:类ClassMetadataReadingVisitor具有接口ClassVisitor作为超类

子类可以与超类具有相同的列名吗?

构造扩展具有自己的构造函数的超类的对象

具有方法参数超类的接口实现

子类和超类方法

超类和子类的互换?

将字典转换为数据框,其中键和值各自具有自己的列

接口和超类的问题

接口、抽象类和继承子类具有相同的方法,获得不同的类型参数,使用哪个?

所有接口的超类

如何编写面向对象的程序以使用超类,子类和接口实例化对象和接口

如何编写面向对象的程序以使用超类,子类和接口实例化对象和接口

与具有新关键字的基类具有相同接口的子类

在Dart中,子类如何扩展具有父类的泛型的超类?

将子类转换为超类并调用两个类都具有的函数

是否有来自具有子类方法仅调用覆盖的超类方法有什么好处?

如果我使用超类来初始化子类对象,为什么该对象具有子类的属性,但是具有超类的方法呢?

是否有可能在C ++中具有超类的子类的成员

具有泛型和Comparable的接口和类

具有基类和子类的Python单元测试

子类和父类中具有相同的变量

Java超类捕获和子类捕获

超类和子类——方法使用

java超类和子类的结果

来回转换超类和子类

从超类或接口列表中获取子类实例