gpt4 book ai didi

java - 在其成员方法中实例化抽象类

转载 作者:行者123 更新时间:2023-12-01 14:32:39 27 4
gpt4 key购买 nike

在使用工厂模式的代码库中,抽象类被实例化为其成员方法的参数。如果抽象类无法实例化,那么该模式如何使用它?这样做有什么好处吗?

import java.io.IOException;
public abstract class abstractClass {

public void member_method(abstractClass t, int i) throws IOException {
// Do something
}

}

最佳答案

您提供的代码示例实际上并不暗示任何类似工厂的行为。这个类是抽象的这一事实也没有那么重要。这是您的示例的更具体的示例实现:

public abstract class MyString {
private String data;

public MyString(String initialValue){
data = initialValue;
}

public void append(MyString toAppend, int appendCount){
for(int i = 0; i < appendCount; i ++){
data = data + toAppend.data;
}
}
public String toString(){
return data;
}
public abstract notRelevantMethod();

}

对于这个类(我希望它看起来很像上面的示例),append 方法允许您将 MyString 的另一个实例传递到您在 MyString 上调用的方法中。在我的示例中,append 方法不使用 MyString 上定义的任何抽象方法,但它可以。如果确实如此,那么它通常遵循"template"编程模式。然而,我想不出一个使用模板并具有采用抽象类型参数的方法的好例子。

关于java - 在其成员方法中实例化抽象类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16739824/

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