gpt4 book ai didi

java - 一类按组成包含到另一类。如何更改其私有(private)字段?

转载 作者:行者123 更新时间:2023-12-02 06:14:50 24 4
gpt4 key购买 nike

我有简单的类(class):

public class Points {

private int x = 0;

public void setX(int x) {
this.x = x;
}
}

我制作了其他具有 Points 字段的类:

public class Curve {

private Points p;

public void setX(int x) {
p.setX(x);
}
}

因此,Curve类中的setX(int x)方法用于更改Points中私有(private)字段x的值。

最后我这样使用这个方法:

public class UseComposition {

public static void main(String[] args) {
// TODO Auto-generated method stub

Curve c = new Curve();
c.setX(1);
}

}

我认为,这段代码有双重含义:如果我更改 Points 中的方法名称,我还必须更改 Curve 类中的 setX 方法。还有其他方法可以解决此类任务吗?也许改变这种私有(private)值(value)观根本不是一个好主意。请帮忙。

最佳答案

I think, this code have a doubling: if I change a method name in Points I also have to change method setX in class Curve.

不,你不知道。如果您愿意,您可以,但这两种方法是独立的。您根本不必公开 Points 中的所有方法,事实上大多数时候您也不想这样做。您应该只公开与您正在编写的类相关的方法。 有时它们可能只是通过单个字段向下委托(delegate),但通常它们会涉及多个字段,或者您需要执行其他操作以及调用委托(delegate)方法。

关于java - 一类按组成包含到另一类。如何更改其私有(private)字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21586637/

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