- thebaleuncoding
오버로딩 VS 오버라이딩, 무슨 차이? - 일산코테
일산코테 일산코딩학원 더바른코딩학원입니다.

위의 이미지에서 공통점과 차이점은 무엇일까요?
면적을 계산한다는 행위는 같지만 어떤 도형이냐에 따라 다른 결과를 만들어냅니다.

또 다른 예로 C언어에서 +기호 사용이 있습니다.
연산자로서 ‘+’는 양 옆의 숫자를 더하는 용도로 사용되지만
연결자로서 ‘+’는 문자열을 연결하는 용도로 사용됩니다.

이와 같이 객체지향 프로그래밍에서 하나의 함수 이름으로
여러 개의 함수를 정의하는 것이 다형성(polymorphism)입니다.
다형성이 유용한 점은 유지보수가 용이하다는 것입니다.
예를 들어 도형의 면적에서 사다리꼴 면적도 구해야 한다면
사다리꼴 클래스만 추가하면 됩니다.
더 알아보고 싶나요?
아래 링크로 이동하세요.