개발/c#
C# get,set // 프로퍼티
N. Dave
2020. 5. 20. 16:26
반응형
객체지향프로그래밍에서 흔히들, 프로퍼티는 private로 설정해야 한다는 얘기를 들어본적이 있을 것이다.
내부적인 값을 외부에 공개하면 여러 리스크들이 존재할 수 있기 때문이다.
그래서 흔히 해당 프로퍼티의 값을 return하는 메소드를 만들고,
해당 프로퍼티의 값을 설정하는 메소드를 만들어두기도 한다.
그런데 이렇게 되면 최소한 프로퍼티의 수 x 2개의 메소드가 필요하다.
'최소한'..
너무 불편하다.
그래서 get, set이라는 것이 존재한다
getter와 setter라고도 한다.
프로퍼티를 설정할 때 곧바로 get, set을 설정할 수 있다.
public class Computer
{
int x { get { return x } set { x = value } }
}
이렇게 getter와 setter를 설정할 수 있다.
포인트를 짚어보자면,
1) int x 뒤에 ;를 사용하지 않았다. 자주 있을 수 있는 문법상 오류..
2) 프로퍼티 뒤에 { }로 get와 set을 묶었고, get과 set 사이에는 다른 표시가 필요하지 않다. , 라든지 ; 라든지
3) get은 값을 가져오라는 뜻이므로, return을 통해 어떻게 값을 내어줄지 표시해야하며
4) set은 설정하는 값인데, 설정된 값은 value 변수에 자동으로 할당된다. (value라는 변수를 선언하지 않아도 된다. 알아서 설정된다)
반응형