【发布时间】:2016-01-08 19:07:01
【问题描述】:
例如,我有以下实现 Icon 接口的类。在构造函数中,它通过创建参数中提供的 Color 对象的深层副本来初始化 Color 对象。
public class CircleIcon implements Icon {
private Color iconColor;
private int radius;
public CircleIcon(Color iconColor, int radius) {
this.iconColor = new Color(iconColor.getRGB());
this.radius = radius;
}
}
我的问题是:这是初始化另一个类的对象的正确方法吗?我经常在其他人的代码中看到这样的事情。在这里,this.iconColor 获取参数中提供的 Color 对象的引用,而不是其副本。
public CircleIcon(Color iconColor, int radius) {
this.iconColor = iconColor;
this.radius = radius;
}
我想知道首选哪种方式。
【问题讨论】:
标签: java oop object constructor