상속 : 상속성은 한 클래스가 다른 클래스의 멤버를 상속받을 수 있게 해주는 특성
ㅡ> 부모클의 코드를 물려받는
- C#에서는 단일 상속만 허용
- 상속 대상 : 메소드, 프로퍼티 클래스의 멤버 필드 등
public class 부모클래스
{
// 멤버 선언, 멤버 변수와 메서드를 정의
}
public class 자식클래스 : 부모클래스
{
// 부모클래스의 멤버를 상속받은후 ,추가 멤버 정의
}
🤗'자식클래스'는 '부모클래스'의 모든 public과 protected 멤버를 상속받게 됨 🤗
🙄'자식클래스'는 '부모클래스'의 기능을 확장하거나 수정하는 등의 작업을 수행🙄
상속을 통해 '자식클래스'에서 '부모클래스'의 멤버를 재정의(override)하려면,
'부모클래스'의 해당 멤버 앞에 'virtual' 키워드, '자식클래스'의 해당 멤버 앞에 'override' 키워드 붙여야 됨.
자식 클래스 (Dog, Cat) 마다 다른 프로퍼티를 가지도록 가능
자식 클래스 프로퍼티 지정안하는 Case : 부모 클래스의 프로퍼티 그대로 사용
모르겠고 구현해봅시다.
public class Animal
{
public string name;
public int age;
public void Eat()
{
Console.WriteLine(name + " is eating.");
}
public void Sleep()
{
Console.WriteLine(name + " is sleeping.");
}
}
🧡1. 부모클래스 정의( 이건 다른 클래스들이 상속 받을수 있는 멤버가짐)
public class Dog : Animal
{
public void Bark()
{
Console.WriteLine(name + " is barking.");
}
}
🧡2. 상속받는 자식클래스 정의
Dog myDog = new Dog();
myDog.name = "clair";
myDog.age = 25;
myDog.Eat(); // "clair is eating." 출력
myDog.Sleep(); // "clair is sleeping." 출력
myDog.Bark(); // "clair is barking." 출력
🧡3. Dog 클래스는 Animal 클래스를 상속받아서 Animal 클래스의 모든 public 멤버를 사용가능
추가로 앞으로 공부해야되는거
GUI(Graphical User Interface) 프로그래밍
Windows Forms
'Form'이라는 기본 클래스를 상속받아 사용자 정의 폼을 생성
Form' 클래스는 창의 기본적인 특성과 동작(예: 창 크기 변경, 닫기 버튼 클릭 등)을 정의
'Form' 클래스를 상속받아 필요한 컨트롤(버튼, 텍스트 박스 등)를 추가하거나 동작을 정의해 만들기
게임캐릭터도 상속성 이용해서 만들어 보죠