gpt4 book ai didi

Java,堆叠类

转载 作者:行者123 更新时间:2023-12-01 22:58:28 25 4
gpt4 key购买 nike

创建一个包含其他类并且可以将其自身添加到数组中的类的最佳/最有效方法是什么?

基本上我想要一个包含“name”、“val1”和“val2”的类所以我想最好的方法很简单:

public class SubClass {

private String name;
private double val1;
private double val2;

public SubClass(String name, double val1, double val2) {
this.setName(name);
this.setVal1(val1);
this.setVal2(val2);
}

其中包含所有“set”和“get”方法。所以我可以将它作为数组子类[]。但我也想要一个“UpperClass”,我可以使用 UpperClass.add(SubClass1); 添加多个“SubClass”,但我也希望 UpperClass 有自己的“名称”并保留所有内容as 和 Array UpperClass[] 也是如此。我希望它作为数组来对单独的列求和,因此我可以将其显示为:

UpperClassName   25    56
Sub1 10 20
Sub2 15 36

我想我可以创建SubClass(String UpperClassName),然后使用setVal,其中我将在该UpperClass中添加所有其他子类的Val1,然后将其全部放入作为一个数组,这听起来有点困惑。

最后,我希望将相同的 UpperClass 添加到 SuperClass,但仅​​作为 UpperClass 的第一行。但我认为这只是做了一些小修改的上层类(Class)?获取:

UpperClassName 25 56
UpperCLassName 30 87
UpperClassName 20 78

有什么简单(干净)的方法可以做到这一点吗?

最佳答案

好的,所以你想要有火车,包含汽车,包含人。您希望能够知道每个人有多少钱,以及每辆汽车和每列火车有多少钱。

所以你需要

public class Person {
private double money;

public double getMoney()
return money;
}
...
}

public class Car {
private List<Person> persons;

public double getMoney {
double result = 0.0;
for (Person person: persons) {
result += person.getMoney();
}
return result;
}
...
}

public class Train {
private List<Car> cars;

public double getMoney() {
double result = 0.0;
for (Car car : cars) {
result += car.getMoney();
}
return result;
}
...
}

就这么简单。就像真实的对象一样,Java 对象可以包含其他对象。

关于Java,堆叠类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23713262/

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