[Java] 메소드

이현준·2020년 9월 30일
1

Java

목록 보기
2/15

다형성이란?

특정 리모컨을 사용하여 특정객체를 조작하는 경우 해당 리모컨에 정의 또는 선언된 메소드만 사용할 수 있음(리모컨 타입에 의해 결정된다)

하지만 실제 호출되는 메소드는 리모컨이 가리키는 객체에 의해 결정됨(이게 다형성)

  • Pet, dog, cat 에서 Pet이 가진 리모컨으론 Pet이 가진 메소드들만 사용할 수 있다. 만약 dog 가 bark()라는 메소드를 가지고 있다하더라도 Pet이 가진 리모콘으론 사용할 수 없다. 하지만 여기서 Pet이 setName()메소드를 가지고 있을때 dog쪽에서 setName()을 오버라이드 재정의를 해주었다면 재정의된 setName()을 사용된다.

  • 다형성을 위해서는 늦은 바인딩이 제공되어야 한다.

바인딩 종류 2가지는?

early binding

final 메소드로 이른 바인딩을 해줄 수 있다.(중요한건 아님)

late binding

자바는 모든 메소드가 자동으로 늦은 바인딩을 제공함

참고자료

0개의 댓글