daily debugging

자습 C# 속성과 필드에 대해 - 속성 vs 필드 본문

[유데미x스나이퍼팩토리] 10주 완성 프로젝트 캠프 - 유니티(Unity/학습일지

자습 C# 속성과 필드에 대해 - 속성 vs 필드

버근가 2023. 9. 26. 18:48

https://www.csharpstudy.com/CSharp/CSharp-class.aspx

 

C# 클래스 - C# 프로그래밍 배우기 (Learn C# Programming)

C# class (클래스) C# class 키워드는 Reference Type을 정의하는데 사용된다. 클래스는 메서드 (Method), 속성 (Property), 필드 (Field), 이벤트 (Event) 등을 멤버로 포함하는 소프트웨어 단위로서 보통 이 클래스

www.csharpstudy.com

필자는 파이썬으로 처음 코딩 언어를 배웠기에 파이썬의 속성에 대해서만 알고 있었다. 그러나 C#에서는 클래스 내부의 데이터와 이를 접근하게 하는 것이 따로 역할이 나뉘어 속성과 필드라는 것으로 존재하는지 처음 알게 되었다. 내가 이해한 바에 따르면 파이썬에서 속성의 개념은 C#에서는 필드라고 하는 것이 맞을 것 같다. 데이터 자체는 필드가 저장하고 있는 것이니까... 그리고 해당 속성에 접근하기 위해서 파이썬에서는 캡슐화 즉 모든 속성을 메서드를 통해서 Get하거나 Set하도록 했었다. 그러나 C#에서는 속성이라는 것이 그 역할을 한다고 보았다. 즉 데이터는 필드(멤버)가 가지고 있고 여기에 접근할 수 있도록 한 것이 속성인 것이다. 그래서 그런지 속성에서는 get키워드와 set키워드가 예제에 작성되어 있었다. OOP의 개념을 잘 이해하고 있다면 해당 개념은 다소 이해하기 어렵지 않아 보인다.

Comments