프로그램/C# - Study / / 2010. 9. 14. 12:12

7D - 상속, protected

반응형


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Ex13OOP4
{
    class Program
    {
        static void Main(string[] args)
        {
            TheDerived deroved = new TheDerived();
            deroved.BaseMethod();
        }
    }
}

**************************************** 코드파일 추가 *********************************************
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Ex13OOP4
{
    //class Classes
    //{
    //}
    class TheBase
    {
        protected int baseField;  // protected 하위 클래스에서 접근 가능 외부는 불가능!
        public void BaseMethod()
        {
            Console.WriteLine("TheBase.BaseMethod");
        }
    }

    class TheDerived : TheBase // 상속 (TheBase의 모든 멤버를 상속)
    {
        private int derivedField;
        public void DerivedMethod()
        {
            baseField = 10;  //상위 클래스의 private 멤버
            Console.WriteLine("TheDerived.DerivedMethod");
        }
    }
}
/*****************************************************************
 * 1. 하위 클래스는 확장하거나 or 변경 작업중 하나를 반드시 포함해야 합니다.
 * 2. 상속이 발생하면 상위 클래스의 모든 멤버가 하위 클래스에 포함됩니다.
 * 3. 상속된 멤버 중 private 멤버는 접근할 수 없습니다. 
 * ***************************************************************/

 

 **************************************** 코드파일 추가 *********************************************

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Ex13OOP4
{
    class TheBase2
    {

        public TheBase2()
        {
            Console.WriteLine("TheBase2 Default Constructor");
        }
        public TheBase2(string data)
        {
            Console.WriteLine("TheBase2 Custim Constructor");
        }
    }
    class TheDerived2 : TheBase2
    {
        public TheDerived2()
        {
            Console.WriteLine("TheDerived2 Default Constructor");
        }
        public TheDerived2(string data)
            : base(data)
        {
            Console.WriteLine("TheDerived2 Custim Constructor");
        }
    }

}

반응형

'프로그램 > C# - Study' 카테고리의 다른 글

7D, 8D -  (0) 2010.09.16
7D - 다형성, 상속  (0) 2010.09.14
7D - readonly, const  (0) 2010.09.14
7D - 오버로딩  (0) 2010.09.14
7D - private, pubic 접근 - 추가  (0) 2010.09.14
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유