[C#] Property
반응형
접근 한정자 private을 사용해 필드를 선언하는 경우
해당 필드에 접근하기 위해 GetClass() SetClass() 를 작성하는 경우가 많다.
이때 C#에서는 Property라는 개념을 통해 은닉성과 캡슐화를 지원한다.
기존 코드의 경우
class MyClass
{
private int number;
public int getNumber(){ return number; }
public int setNumber(int number){ this.number = number;}
}
static void Main(string[] args)
{
MyClass myClass = new MyClass();
myClass.setNumber(100);
Console.WriteLine(myClass.getNumber());
}
와 같이 get, set Method를 생성해주고 해당 Method를 사용했어야 했다..
하지만 Property를 사용하면
class MyClass
{
private int number;
public int Number{get{return number;} set {number = value;}}
}
static void Main(string[] args)
{
MyClass myClass = new MyClass();
myClass.Number = 100 ;
Console.WriteLine(myClass.Number);
}
아래와 같이 시각적으로 보기 좋은 코드로 재탄생한다.. 추가적으로 private 필드에 Property를 만드는것은 내부에서 사용하기 위함이니 적절히 잘 사용하자.
다만 은닉화 및 캡슐화의 이점이 필요하지 않은 경우라면 일반적으로 전역변수를 설정하여 쓰는것이 아주 조금의 차이지만 성능상의 이점이 있다.
반응형
'Study > C#' 카테고리의 다른 글
[C#] WPF에 대해서 알아보자 #1 WPF를 왜 쓰지? , DataContext (0) | 2023.03.07 |
---|---|
[C#] Singleton 디자인 패턴 구현방법 (0) | 2023.01.05 |
[C#] OpenFileDialog , 파일 오픈 팝업 만들기 (0) | 2022.09.14 |
[C#] WPF DevExpress TableView MutliSelection (0) | 2022.09.13 |
[C#] Dictionary 사용하기 (0) | 2022.09.05 |
댓글