[Unity/C#]Property(GET/SET)

강동현·2023년 12월 30일
0

Unity/C#

목록 보기
6/26
  • 객체지향 프로그래밍의 은닉성에 따른 부산물
  • private 선언변수 접근 방식을 유도하기 위해 사용
  • 일반적으로 Property는 사용하고자 하는 변수의 대문자로 시작하는 변수명으로 선언한다.

1. GET(접근자) / SET(설정자)

  • 접근 제한이 걸린 변수를 함수를 통해 접근 & 수정하는 방식이다.
private int num;
//GET 함수
public int Get(){
	return num;
}
//SET 함수
public void Set(int value){
	num = value;
}

2. Property[★]

  • value 키워드를 통해 인자로 들어온 값을 자동으로 할당
private int num;
public int Num {
	get{ return num; }
    set{ num = value; }
}

3. 자동구현 Property

  • 자동적으로 구현되는 Property
  • 직렬화가 불가능한 Property임에도 [field:SerializeField]로 직렬화가 가능하다.
public int Num { get; set; }
  • private set
    • 해당 클래스 밖에서 수정(Set) 불가
public int Num { get; private set; }
  • get만 작성
    • 읽기 전용
public int Age { get; } = 5;//미리 값을 넣어 사용
public int Age => 5;//위 코드와 동일
  • 람다를 사용한 표현
    • 중괄호를 생략하고 람다프로퍼티 선언 가능
public int Age { get => age; private set => age = value; }
profile
GAME DESIGN & CLIENT PROGRAMMING

0개의 댓글