C#에서 코드를 구현할때 변수를 선언해야 하는 상황이 자주 있다
이때 Public이냐 Private냐 선택을 해야 하는데,
일반적으로 C#은 객체지향언어이기 때문에 private으로 선언을 해주는것을 지향해야한다.
그럼 private를 외부에서 불러올 수 있게 해주는 방법이 없을까?
그것이 바로 Get, Set을 이용한 프로퍼티이다!using System; namespace ConsoleApplication45 { struct Student { private string name; private int age; public string Name // 메서드화 { get { return name; } set { if (value.Length > 4) { Console.WriteLine("이름은 8자 이상 넘을 수 없습니다."); } else name = value; } } public int Age { get { return age; } set { age = value; } } } class Program { static void Main(string[] args) { Student student = new Student(); Student student1 = new Student(); student.Age = 50; student1.Age = 13; student.Name = "뮤탈리스크리스마스"; student1.Name = "김철수"; Console.WriteLine("저의 이름은 " + student1.Name + "이고, 나이는 " + student1.Age + "살 입니다."); } } } //출력 이름은 8자 이상 넘을 수 없습니다. 저의 이름은 김철수이고, 나이는 13살 입니다.
이렇게 정말 간단하게 외부에서 private값을 불러올수 있게 해준다!
또 읽기만 할거면 Get만 사용하면 되고, 쓰기만 할거면 Set만 사용하면 된다!