프로퍼티란 ?
- 프로퍼티는 클래스 멤버로서, 객체의 필드 값을 읽거나 설정하는데 사용되는 접근자 메서드의 조합이다.
- 객체의 필드에 직접 접근하지 않고 간접적으로 값을 설정하거나 읽을 수 있도록 한다
- 필드에 대한 접근 제어와 데이터 유효성 검사 등을 수행할 수 있다.
- 프로퍼티는 필드와 마찬가지로 객체의 상태를 나타내는 데이터 역할을 하지만, 외부에서 접근할 때 추가적인 로직 수행이 가능하다.
프로퍼티의 구문
[접근 제한자] [데이터 타입] 프로퍼티명
{
get
{
// 필드를 반환하거나 다른 로직 수행
}
set
{
// 필드에 값을 설정하거나 다른 로직 수행
}
}
프로퍼티 사용 예시
class Player
{
private string name; // private로 변수선언
private int level; // private로 변수선언
public string Name
{
get { return name; }
private set { name = value; } // 외부에서 set 하지 못하도록 막아놓음
}
public int Level
{
get { return level; }
set // set 시도 할 경우
{
if (value >= 0) // 0과 같거나 크면
level = value; // 해당값을 level에 저장
}
}
}
Player player1 = new Player();
player1.Name = "geun"; // set 접근자는 private이기때문에 컴파일 오류.
player1.level = -1; // 유효성 검사에 의해 음수값은 설정하지 않음
여기까지가 오늘 배운 내용중 일부이다.
앞으로 자주 쓰일것같아 TIL도 적을 겸 미리 블로그에 옮겨적어놓았다.