[C#}왜 클래스 안에다가 private 으로 선언한 인스턴스를 또 대문자로 해서 public으로 선언하냐??


 class Profile
    {
        private string name;
        private string phone;

        public Profile()
        {
            name = ""; phone = "";
        }

        public void Print()
        {
            Console.WriteLine("{0}, {1}", name, phone);
        }

        public string Name
        {
            get { return name; }
            set { name = value; }
        }

        public string Phone
        {
            get { return phone; }
            set { phone = value; }
        }
    }

    class Profile2
    {
        private string name;
        private string phone;

        public Profile2()
        {
            name = ""; phone = "";
        }

        public void Print()
        {
            Console.WriteLine("{0}, {1}", name, phone);

        }

        public string Name
        {
            get { return name; }
            set { name = value; }
        }

        public string Phone
        {
            get { return phone; }
            set { phone = value; }
        }

    }

    class Profile3
    {

        private string name;
        private string phone;

        public Profile3()
        {
            Console.WriteLine("{0}, {1}", name, phone);
        }

        public string Name
        {
            get { return name; }
            set { name = value; }

        }

        public string Phone
        {
            get { return phone; }
            set { phone = value; }
        }
    }

// 왜 get set으로 데이타를 핸들링 하는거냐????

// 개나 소나 와서 원본 데이타를 못바꾸게 하기 위해서겟지..

이걸 캡슐화라고 한다!!!!!!!!!!!!!!!  
즉 public 으로된것, 밖에 공개된 놈만 신경쓰면 되게만든것.
알약캡슐의 겉에 쓰인 글자만 읽을줄 알면 된다 .  비약이 좀...

댓글

이 블로그의 인기 게시물

[C# Winform 예제] ScreenSaver 스크린세이버 만들기

아 정말 이사람 IELTS 관한 비법 글은.. 정말 공감10000%

Vocabulary for IELTS (2000 words) advanced level.