필드(Field) vs 속성(Property)

2025. 11. 4. 17:44·C#
public string filePath = "students.ini";

🔹 필드(Field)
클래스 내부에서 데이터를 직접 저장하는 공간
외부에서 접근할 때 직접 읽고 쓸 수 있음
지금 코드에서 public string filePath가 바로 필드

문제점:
외부에서 바로 수정 가능 (iniFile.filePath = "abc.ini";)
나중에 값을 검증하거나, 변경될 때 동작을 넣기 어렵습니다.

-

public string FilePath { get; set; } = "students.ini";

🔹 속성(Property)
읽기/쓰기 방법을 캡슐화해서 관리
값 변경 시 검증, 로그, 이벤트 등 추가 가능
C#에서는 get과 set으로 구현

 

 

  • get : 값을 가져올 때 호출
  • set : 값을 변경할 때 호출
  •  

💡 정리

  • 필드는 단순 저장용 → 외부에서 바로 접근 가능, 검증 어려움
  • 속성(Property)은 캡슐화 + 검증 + 유지보수 편리
  • C#에서는 공개 데이터를 만들 때 필드보다는 속성을 권장합니다.

 

'C#' 카테고리의 다른 글

학생 추가 기능 분리  (0) 2025.11.05
학생 조회 프로그램 - class 버전  (0) 2025.11.04
namespace와 using구문  (0) 2025.11.04
필드(전역)변수와 내부(지역)변수  (0) 2025.11.04
static void Main(string[] args) 의 의미  (0) 2025.11.04
'C#' 카테고리의 다른 글
  • 학생 추가 기능 분리
  • 학생 조회 프로그램 - class 버전
  • namespace와 using구문
  • 필드(전역)변수와 내부(지역)변수
joo_coding
joo_coding
2025.02.18~
  • joo_coding
    주코딩일지
    joo_coding
  • 전체
    오늘
    어제
    • 분류 전체보기 (219)
      • 일지 (19)
      • 계획표 (7)
      • 프로젝트 (6)
      • C언어 (35)
        • 연습장 (12)
      • C++ (3)
      • C# (34)
      • Python (28)
        • 연습장 (11)
      • TCP IP (4)
      • DB (2)
      • ubuntu (1)
      • Git (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    c언어 #vscode #gcc #윈도우 #c언어윈도우 #gcc윈도우 #vscode윈도우 #c #c++
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
joo_coding
필드(Field) vs 속성(Property)
상단으로

티스토리툴바