gpt4 book ai didi

java - 将值从父类(super class)复制到子类

转载 作者:太空宇宙 更新时间:2023-11-04 15:24:14 25 4
gpt4 key购买 nike

我有以下父类(super class)。

SuperOne.java

public class SuperOne{

private String id;
private String name;

//public setter and getter methods


}

SubOne.java

public class SubOne extends SuperOne{

//To Do : SubOne has no extra fields.

}

我有以下方法:

public SubOne getData(String id){

SuperOne data = someDao.getData(String id)

// Now we have result in data . Now i need to convert data into SubOne and return.

}

SuperOne.java 没有构造函数,是由第三方提供的,我无法修改。但我可以修改 SubOne,因为它是我自己的。请建议我将 SuperOne 转换为 SubOne 的最佳方式

最佳答案

您可以使用 SubOne 作为包装器,而不是作为子项

class SubOne {

private SuperOne superOne;

public SubOne(SuperOne) {
this.superOne = superOne;
}

public String getId() {
return this.superOne.getId();
}

public String getName() {
return this.superOne.getName();
}

public String setId(String id) {
return this.superOne.setId(id);
}

public String setName(String name) {
return this.superOne.setName(name);
}

///////////////

public SubOne getData(String id){
SuperOne data = someDao.getData(String id)
return new SubOne(data);
}

附录

如果你坚持继承SuperOne,你可以这样做。

class SubOne extends SuperOne {

public SubOne(SuperOne superOne) {
super.setId(superOne.getId());
super.setName(superOne.getName());
}

关于java - 将值从父类(super class)复制到子类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20043244/

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