【发布时间】:2016-11-23 07:51:29
【问题描述】:
存在一些通用性问题。 所以,这是我正在处理的一个简单版本:
我有一个抽象类和两个子类:
public abstract class A {}
public class B extends A {}
public class C extends A {}
我正在为这些课程编写作家,并且我希望保持相同的架构,因为所有这些都有很多共同点。但我希望能够在不实例化的情况下调用作者
public abstract class AWriter<T extends A> {
public void AWritingMethod(T arg) {}
}
public class BWriter extends AWriter<B> {
public static void BWritingMethod(B arg) {
AWritingMethod(arg)
}
}
public class CWriter extends AWriter<C> {
public static void CWritingMethod(C arg) {
AWritingMethod(arg)
}
}
显然,我不能在 BWriter 和 CWriter 中调用 AWritingMethod,但是我怎样才能做这样的事情来保持 AWriter 中的大部分工作,同时仍然保持 BWritingMethod 和 CWritingMethod 静态?
已经谢谢了!
LD
【问题讨论】:
-
这根本没有意义。
AWriter.AWritingMethod是一个实例方法,你想在不创建实例的情况下调用它……显然这是不可能的。
标签: java generics static-methods