변경 가능한 개체의 속성을 만들려고합니다. 자동 속성에 문제가 있습니까? 예를 들어, 다음 코드는 변경 가능한 객체를 원하지 않는 조작을 허용합니다. 어떻게 이것을 피할 수 있습니까?변경 가능한 개체가있는 자동 속성
public class Mutable{
public int Value { get; set; }
}
public class ClassWithMutable{
public Mutable Object { get; }
public ClassWithMutable(){
this.mutable = new Mutable();
this.mutable.Value = 0;
}
}
public class Demo{
public static void Main(String[] args){
ClassWithMutable test = new ClassWithMutable();
Mutable o = test.Object;
o.Value = 1;
}
}
그렇다면 'o.Value = 1;'이 작동하는 것을 원하지 않으십니까? – Quantic
개체를 변경할 수 없게 만드시겠습니까? setter를 정의하면 변경 가능성이 있습니다. –
내 Mutable 개체를 ClassWithMutable 클래스 내에서만 변경할 수 있습니다. – nostro