gpt4 book ai didi

java - 何时使用嵌套类

转载 作者:行者123 更新时间:2023-12-02 06:57:28 26 4
gpt4 key购买 nike

如果函数返回 2 个值,例如:数组中的最小值/最大值,或者例如点的 x 轴和 y 轴,则需要创建一个对象,因为函数不能返回 2 个值。

现在,考虑一个客户端,其“唯一”功能是在返回的对象中使用 getter 并进行打印。和返回的对象说 MinMax 或 Point 对象仅由一个类创建,

我们应该使用嵌套类(例如:MinMax、Point可以是嵌套类)还是使用顶级类?

这是一个通用问题 - 下面只是与该问题相关的一个示例。请完成与代码示例相关的答案,因为这是一个非常通用的问题,与示例代码无关。

Point 类是否应该是返回的内部类,类似于 arraylist 返回 itr 的方式?

class Point {
private final int x;
private final int y;

public Point(int x, int y) {
this.x = x;
this.y = y;
}

int getX() {
return x;
}

int getY() {
return y;
}
}

public class IntersectionOf2Lines {

public static Point calculateIntersection(Line line1, Line line2) {
int x = (line2.getConstant() - line1.getConstant()) / (line1.getSlope() - line2.getSlope());
int y = line1.getSlope() * x + line1.getConstant();

return new Point(x, y);
}


Line line3 = new Line(2, 2);
Line line4 = new Line(3, 2);

Point p1 = IntersectionOf2Lines.calculateIntersection(line3, line4);
System.out.println("Expected: x = 0, Actual x = " + p1.getX() + " Expected y=2, Actual y = " + p1.getY());

最佳答案

恕我直言,这是一个风格问题。我会从第一次阅读你的代码的人的角度来看待它。您想让哪些类变得明显,哪些类您想分组,他们只需要在了解详细信息时阅读。

顺便说一句:嵌套类需要嵌套在另一个类的范围内,而不仅仅是与示例中相同的类文件中。

关于java - 何时使用嵌套类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17128616/

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