(자바) 오버로딩 vs 오버라이딩

2021. 12. 26. 16:06자바 (Java)

  오버로딩 오버 라이딩
   슈퍼 클래스에 있는 메소드의 이름, 매개 변수 타입과 개수, 리턴 타입 등이 모두 동일한 매소드로 서브 클래스에 재정의 되었을 경우 한 클래스나 상속 관계에 있는 클래스에 서로 변수 타입이나 새루가 다른 여러개의 메소드가 같은 이름으로 작성되는 것을 지칭.
선언 같은 클래스나 상속 관계에서 동일한 이름의 메소드 중복 작성 서브 클래스에서 슈퍼 클래스에 있는 메소드와 동일한 이름의 매소드 재작성
관계 동일한 클래스 내 혹은 상속 관계 상속 관계
목적 이름이 같은 여러 개의 메소드를 중복 선언하여 사용의 편리함 향상 슈퍼 클래스에서 구현된 메소드를 무시하고 서브 클래스에서 새로운 기능의 메소드를 재정의  하고자 함
조건 메소드 이름은 반드시 동일함. 
메소드의 인자의 개수나 인자의 타입이 달라야 성립
메소드의 이름, 인자의 타입, 인자의 개수, 리턴 타입 등이 모두 동일하여야 성립
바인딩 정적 바인딩.
컴파일 시에 중복된 메소드 중 호출되는 메소드 결정 
동적 바인딩.
실행 시간에 오버라이딩된 메소드를 찾아 호출

오랜만에 상속 복습