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 |