【发布时间】:2011-08-29 16:12:14
【问题描述】:
首先,请注意,我正在尝试用我目前的知识和词汇尽可能地表达我的问题,所以请原谅...
我有一个抽象类,我想在其中创建一个实例化自身的方法......当然这在抽象类中是不可能的,但是,我真正想要的是具体的孩子(那些“ extends") 来继承这个实例化,这样他们就可以实例化自己....
基本上我想做的是这样的:
MyAbstract a = new this();
但是这是不允许的...有什么方法可以做我想做的事吗?
这是一些非编译的梦想代码(即我希望工作的代码)。基本上我希望 ConcreteChild 调用一个方法,在该方法中它创建自己的对象。该方法是从其父级继承的。
public class Abstract {
public void instantiateMyConcreteChild()
{
Abstract a = new this();
}
}
public class ConcreteChild extends Abstract{
public static void main(String[] args) {
ConcreteChild c = new ConcreteChild();
c.instantiateMyConcreteChild();
}
}
* 附加信息 **
感谢您的回复,但我想我错过了一些重要的事情......
基本上,我想将对象的自身(“this”)传递给其他类的一些方法。但是,在一个对象中创建实例化另一个对象有点倒退,我可以只传递“this”,对...
【问题讨论】:
-
请问,你想达到什么目标?它可能存在更好的方法来做到这一点。
-
到目前为止,您有四个不同的答案,都试图猜测您真正想要完成什么。你能编辑你的帖子更详细地解释你想要什么吗?
-
添加了信息,我已经评论了别人的回复。
标签: java this abstract-class concrete