作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设类 C 和 D 扩展了类 B,而类 B 又扩展了类 A
我在类 E 中有一个方法,我希望能够在其中使用对象 C 或对象 D。我知道类 A 提供了我需要的所有方法。我怎样才能编写一个方法来传递对象 C 或对象 D 作为参数?
我认为我需要创建一个通用类是正确的吗?如果是的话,有人有更接近我需要的具体例子this这似乎只是告诉我如何使用现有的集合类?
最佳答案
class A {
public String hello(){return "hello";}
}
class B extends A{}
class C extends B{}
class D extends B{}
方法 hello
在所有子类 B、C 和 D 中都可用。
所以在 E 中,执行如下操作:
private void test() {
System.out.println(hello(new A()));
System.out.println(hello(new B()));
System.out.println(hello(new C()));
System.out.println(hello(new D()));
}
public String hello(A a) {
return a.hello();
}
并且您可以传递 A、B、C 或 D 的实例
顺便说一句 - 在这种情况下不需要泛型(据我所知)
关于java - Java 中的泛型方法和继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5732512/
我是一名优秀的程序员,十分优秀!