✔️ 오버로딩은 기존에 없던 새로운 메서드를 정의하는 것이고 오버라이딩은 상속 받은 메서드의 내용만 변경하는 것이다.
overrding
- 상위 클래스의 메서드를 하위 클래스가 재정의하는 것을 말한다.
- 메서드의 이름은 물론 파라메터의 수와 타입도 동일해야 한다.
- 주로 상위 클래스의 동작을 상속받은 하위 클래스에서 변경하기 위해 사용한다.
- 메소드 이름, 매개변수와 타입, 리턴 타입이 모두 동일해야 한다.
overloading
- 메서드의 이름은 같고 매개변수의 수나 타입이 다른 함수를 정의하는 것을 말한다.
- 리턴값만 다르게 갖는 오버로딩은 작성할 수 없다.
- 메소드 이름이 같고 매개변수와 타입이 다르며 리턴 타입은 상관없다.