【发布时间】:2013-08-16 21:49:44
【问题描述】:
我需要写一些进口商。他们需要所有相同的初始化。所以我尝试写一个抽象类,它做了所有的初始化,也有main方法,这样所有的子类只需要实现run()就可以完成它们具体的导入工作:
public abstract class AbstractImporter {
public AbstractImporter() {
// Initialization
}
public abstract void run();
public static void main(String[] args) {
AbstractImporter importer = new AbstractImporter();
importer.run();
}
}
public class ConcreteClass() {
public void run() {
// Do some importing
}
}
当然无法创建这个抽象类的实例 (new AbstractImporter())。
有人知道如何解决这个问题吗?蒂亚!
【问题讨论】:
-
你想让main方法做什么?
-
@JBNizet 我喜欢避开具体子类中的main方法,所以这个抽象超类的main方法应该实例化子类并调用run方法。
-
你将如何在父类主方法中实例化子类??你确定你要做什么??
-
@tech-idiot 不,你是对的。可能为时已晚... ;)