C#이 보이는 그림책 5장2 5장, 클래스의 상속 (5-2) 오버라이드 / 구조체 * 오버라이드 (override) : 상속한 메소드와 같은 이름, 같은 인수의 메소드를 작성해서 메소드를 덮어쓰는 것. 반환값 형도 같아야 한다. 이름의 은폐가 같은 이름을 가진 멤버를 숨긴다면(사라지는 것은 아님) 오버라이드는 같은 이름을 가진 메소드를 숨기는 거네? (순서도 다름. 은폐(new)는 수식자 앞에(문장 맨 앞에) 있는데, 오버라이드는 수식자 뒤, 형 앞에 있음. class Greeting { public virtual void bye() //virtual : 오버라이드되는 메소드엔 얠 붙여야 한다. { Console.WriteLine("good bye"); } } ... .. Greeting greeting = new Greeting(); greeting.bye(); .. 여기까지의 결과.. 2021. 11. 29. 5장, 클래스의 상속 (5-1) 상속 / 액세스 수식자 / static / 이름의 은폐 * 상속 : 클래스(기본 클래스)가 가지고 있는 멤버를 다른 클래스(파생 클래스)에 이어받는 것. 상속한 멤버는 파생 클래스에서 정의하지 않아도 사용할 수 있다. 파생 클래스는 가지를 치듯 계속 만들 수 있지만 상속받을 수 있는 클래스는 하나뿐이다. (상속을 주는 건 자유) class Animal { public string name; public int age; public void print() { ... .. Dog dog = new Dog(); class Dog : Animal { public int birth; } Dog : 파생 클래스 명 : Animal : 기본 클래스 명 상속을 정의할 땐 : 을 사용한다. : 그러나 상속을 이용한다고 기본 클래스의 모든 것을 이어받을 순 없다. 각 멤버에 .. 2021. 11. 28. 이전 1 다음