오버로딩, 오버라이딩
오버로딩
- 같은 클래스나 상속 관계에서 동일한 이름의 메서드를 중복 작성하는 것을 말한다.
- 오버로딩은 동일한 클래스나 상속 관계에서 가능하다.
- 겉은 다르고 속은 같다.
>겉(중괄호 바깥) : 매개변수의 타입, 개수
>속(중괄호 안) : 메서드의 내용
- 이름이 같은 메서드를 여러 개 작성하여 편리성을 향상시키고 다형성을 실현한다.
- 컴파일 될 때 결정된다. (정적 바인딩)
오버라이딩
- 서브 클래스(자식 클래스)에서 슈퍼 클래스(부모 클래스)에 있는 메서드와 동일한 이름의 메서드를 재작성 하는 것이다.
- 오버라이딩은 상속관계에서만 일어난다. (이게 오버로딩이랑 가장 큰 차이점)
- 겉은 같고 속은 다름
>겉(중괄호 바깥) : 이름, 매개변수 타입, 개수, 리턴 타입
>속(중괄호 안) : 메소드 안의 내용
- 상속을 통해 '하나의 인터페이스(같은 이름)에 서로 다른 내용 구현'이라는 객체 지향의 다형성을 실현한다.
- 클래스 파일이 실행될 때(함수가 호출될 때) 결정된다. (동적 바인딩)
す ご い