gpt4 book ai didi

java - 如何在 Java 中动态创建对象的新实例?

转载 作者:行者123 更新时间:2023-11-29 06:20:32 33 4
gpt4 key购买 nike

我有一个名为 GetInput.java 的类我有一个名为 GetNotReleasedInput.java 的类。我在 GetNotReleasedInput 中扩展了 GetInput。在 GetInput 中,我调用了一个名为 addLineToArray() 的私有(private)函数在该函数中,我定义了一个新类,其中包含有关导入的详细信息。

但是,由于我正在为所有 输入文件创建通用类 (GetInput),我不能在 addLineToArray() 中说:

AAData nextData = new AAData();

因为我有 AA/Not Released,在这种情况下它应该是 NotReleased。那么我如何才能在该函数中动态生成新的 nextData

最佳答案

要么你创建一个 protected 方法来创建 nextData 对象,这样子类就可以决定如何进行制造,或者你有某种工厂对象(可在外部对象创建时配置)委托(delegate)给。执行后者的最简单方法是传入一个 Class 并调用它的 newInstance() 方法,但是可能很多更复杂;一本关于软件模式的书将对此进行相当深入的探讨。

但是,如果您可以将整个事情委托(delegate)给 GetInput 的子类,那将是最简单的。 (你没有提供足够的信息让我能够计算出你应该实际使用哪种模式。)

关于java - 如何在 Java 中动态创建对象的新实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3227244/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com