프로퍼티

정제로·2023년 8월 15일
0

C#

목록 보기
18/30

프로퍼티

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만 사용하면 된다!

profile
초보자입니다.. 잘못된 정보, 달게 받겠습니다..

0개의 댓글

관련 채용 정보