[Unity]/[C#]

[C# 기초] #16. Property(프로퍼티)

극꼼 2021. 8. 1. 19:33
반응형


 

Property(프로퍼티)

 : 은닉한 변수(private 또는 protected)에 외부에서 접근할 수 있게 해줍니다. 멤버 변수를 은닉하게 되면 getter, setter 메소드를 구현해야 하는데요, 이를 편리하게 해주는 것이 C#의 프로퍼티입니다. 

 

//getter, setter 메소드를 사용한 예시
int max;
public int GetSetMax
{
    get
    {
        return max;
    }
    set
    {
        max = value;
    }
}

//Property를 이용한 예시
private int max { get; set; }

private void Start
{
	GetSetMax = 30;
    Debug.Log(GetSetMax);  //30이 찍힘
    
	max = 3;
    Debug.Log(max);  //3이 찍힘
}

Property는 위와 같이 클래스 변수를 감추며 접근할 수 있으면서도 get, set 키워드를 간결하게 사용할 수 있게 자동으로 구현해줍니다. 

 


Property 특징

1. get : 값을 반환.

2. set : 새 값을 할당. value 키워드는 set 키워드가 할당하는 값을 정의하는데 사용하며, set 안에서만 유효함.

3. get만 사용하면 읽기 전용, set만 사용하면 쓰기 전용이 됨.

4. get, set 내에서 조건을 걸어줄 수 있음.

 

 

반응형