我有 RangeClass 和一个 MyClass,它有 RangeClass 属性。
public class RangeClass{
public int min;
public int max;
}
和
public class MyClass{
RangeClass range;
public void setRange(Range r){
}
}
我想创建几个 MyClass 实例,而 myClass.range 是 RangeClass 的引用(比如 defaultRange)。因此,每当我更改 defaultRange 时,它都会反映到 myclass 的所有 range 属性。我想知道如何在不经历每个实例的情况下做到这一点。我找到了这篇文章,但我不确定如何修改接受的答案以实现我的目标。
更新:下面的代码显示了用作 MyClass 类的属性的两个范围类,并显示了如何访问范围方法。公共类范围{公共浮动分钟;公共浮动最大值;公共范围(浮动 a,浮动 b){ min = a; 最大值 = b; }
public bool Contains(float a){
if (a >= min && a<=max){
return true;
}
return false;
}
}
public class MyClass{
public static Range range;
public void SetRange(Range r){
range = r;
}
public bool Cointains(float num){
return range.Contains(num);
}
}
public class OtherClass{
MyClass instance1;
MyClass instance2;
public OtherClass(){
Range range1 = new Range(1,5); //creates instance of Range
Range range2 = new Range(6,10); //creates another instance of Range
instance1 = new MyClass();
instance1.SetRange(range1);
instance2 = new MyClass();
instance2.SetRange(range2);
bool isInSetA = instance1.Contains(4);
bool isInSetB = instance2.Contains(4);
}
}