반응형

virtual 3

[C# 무료 동영상 강의] 21. 다형성

[C#] 6.2 다형성 [C#] 6.2 다형성 – 언제나 휴일 OOP 언어는 캡슐화, 상속과 더불어 중요한 특징으로 다형성이 있습니다. C#에서의 다형성은 크게 두 가지로 얘기합니다. 첫째로 변수는 여러 형식의 개체를 참조할 수 있다는 것입니다. C#에서는 기반 형식의 변수로 파생된 개체를 참조할 수 있습니다. 두 번째로 변수를 통해 메서드를 호출했을 때 구체적인 동작이 다를 수 있다는 것입니다. C#에서는 기반 형식의 멤버 메서드를 추상 메서드와 가상 메서드로 지정할 수 있는데 파생된 형식에서 재정의하면 기반 형식 ehpub.co.kr

[C++] 31. 다형성 개요

이번에는 OOP의 주요 특징 세 가지인 캡슐화, 상속, 다형성 중에 다형성에 관해 살펴봅시다. 다형성은 기반 형식의 멤버를 파생 형식에서 상속받는 장점을 활용할 수 있는 OOP 특징입니다. 하나의 기반 형식에서 파생한 다양한 파생 클래스가 있을 때 같은 형식의 변수로 접근할 수 있으면 프로그래밍을 효과적으로 할 수 있겠죠. C++언어에서는 기반 형식의 포인터 변수로 파생 형식의 개체를 설정할 수 있습니다. 그리고 기반 형식의 참조 변수로 파생 형식의 개체를 설정할 수도 있습니다. class Musician { }; class Pianist:public Musician { }; int main() { Musician *musician = new Pianist(); //기반 형식 포인터 변수에 파생 형식 개..

[C++] 메서드의 다형성

6.2 메서드의 다형성 기반 클래스 형식 포인터 변수로 파생된 개체를 관리를 할 수 있다는 것은 매우 매력적입니다. 하지만 모든 행위가 모두 동일하게 동작한다면 굳이 기반 클래스와 파생 클래스로 나눌 필요가 없겠지요. 기반 클래스 형식 포인터 변수로 관리하는 개체의 멤버 메서드를 호출할 때에 파생된 각 클래스에서 새롭게 정의한 메서드를 호출할 수 있게 할 수 있습니다. 이처럼 사용하는 곳에서 호출하는 메서드는 동일하지만 실제 동작하는 모습이 다를 수 있다는 것도 중요한 다형성의 특징입니다. 만약, 오케스트라의 모든 음악가가 같은 연주를 한다면 어떤 느낌이 들까요? 아마도 각 음악가가 연주하는 모습이 다르지만 각각의 연주가 조화를 이루기 때문에 더욱 더 장엄하고 아름답게 들리는 것이로 생각됩니다. 프로그램..

반응형