继承私有值时如何制作复制构造函数?
How to make a copy constructor when inherited private values?
我需要为大学的一项任务制作一个单位转换器。
因此我们给出了这个代码:
public abstract class SIUnit {
enum EUnitType {
DISTANCE,
MASS,
TIME
};
private double value;
private EUnitType unitType;
public abstract void setDerivedValue(EUnitType newType, double newValue);
public abstract double getDerivedValue();
}
所以这些值是私有的。现在我们需要为 SIUnit 创建一些构造函数。
第二个任务是创建一些 类 具有特定的单元类型和一个构造函数和一个复制构造函数
我的问题是如果我所有的参数都是私有的,如何制作复制构造函数?
在 Java 中,您可以访问私有参数,因为复制构造函数位于同一个 class 中。所以对于你的复制构造函数,它看起来像这样:
public SIUnit(SIUnit inUnit){
value = inUnit.value;
unitType = inUnit.unitType;
//Same thing for the rest of the instance variables
}
我需要为大学的一项任务制作一个单位转换器。 因此我们给出了这个代码:
public abstract class SIUnit {
enum EUnitType {
DISTANCE,
MASS,
TIME
};
private double value;
private EUnitType unitType;
public abstract void setDerivedValue(EUnitType newType, double newValue);
public abstract double getDerivedValue();
}
所以这些值是私有的。现在我们需要为 SIUnit 创建一些构造函数。 第二个任务是创建一些 类 具有特定的单元类型和一个构造函数和一个复制构造函数 我的问题是如果我所有的参数都是私有的,如何制作复制构造函数?
在 Java 中,您可以访问私有参数,因为复制构造函数位于同一个 class 中。所以对于你的复制构造函数,它看起来像这样:
public SIUnit(SIUnit inUnit){
value = inUnit.value;
unitType = inUnit.unitType;
//Same thing for the rest of the instance variables
}