Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# 속성 접근자(Property Accessor)란? get과 set 완벽 정리

C#에서 속성(Property)은 필드(Field)의 확장 개념으로, 필드와 동일한 문법으로 접근할 수 있습니다. 속성은 접근자(Accessor)를 사용하여 클래스 내부의 private 필드 값을 읽거나(get), 쓰거나(set), 조작할 수 있도록 해줍니다.

속성 접근자의 역할

속성의 접근자에는 실행 가능한 코드 블록이 포함되어 있습니다. 접근자는 크게 두 가지로 나뉩니다.

  • get 접근자: 필드의 값을 읽거나 계산하여 반환합니다.
  • set 접근자: 필드에 새로운 값을 할당(쓰기)합니다.

이러한 구조 덕분에 외부에서는 마치 일반 변수처럼 속성에 접근하면서도, 내부적으로는 유효성 검사나 추가 로직을 수행할 수 있다는 장점이 있습니다.

C# 속성 예제

먼저 string 타입의 Code 속성을 선언해 보겠습니다.

public string Code {
    get {
        return code;
    }
    set {
        code = value;
    }
}

get 접근자는 code 필드의 값을 반환하고, set 접근자는 키워드 value를 통해 전달된 값을 code 필드에 저장합니다.

같은 방식으로 int 타입의 Age 속성도 다음과 같이 선언할 수 있습니다.

public int Age {
    get {
        return age;
    }
    set {
        age = value;
    }
}

정리

C#의 속성 접근자는 캡슐화(Encapsulation)를 구현하는 핵심 문법입니다. private 필드를 직접 노출하지 않으면서도 안전하게 값을 읽고 쓸 수 있게 해주며, 필요에 따라 get이나 set 중 하나만 정의하여 읽기 전용 또는 쓰기 전용 속성을 만들 수도 있습니다.