코딩 공부/JAVA
#13. JAVA_오버로딩, 오버라이딩
코딩연습중
2022. 7. 18. 02:56
메서드의 오버로딩이란 메서드의 '중복 정의'라고 하며, 하나의 클래스 내에서 같은 이름을 가진 메서드를 여러 개 정의하는 것이다. 오버로딩을 위한 메서드명은 대소문자까지 동일해야 한다. 오버로딩의 경우는 다음과 같이 3가지 경우가 있다.
1) 파라미터의 개수가 다른 경우
2) 파라미터의 개수가 같아도 타입이 다른 경우
3) 개수와 타입이 같아도 순서가 다른 경우

메서드의 오버라이드란 '메서드의 재정의'라는 의미를 가지며 상속관계의 객체에서 부모의 메서드를 가져와서 내용만 자식클래스에 맞게 재정의 하는 것이다.

예를 들어, 다음과 같이 Animal이라는 클래스를 만들었다고 하자. 변수 eye와 leg는 private으로 선언되어 있기 때문에 다른 클래스에서 사용할 수 없다. 따라서 getter을 생성해 eye와 leg값을 리턴할 수 있게 해 준다. 위의 코드를 보면 Animal 클래스를 사용해 eye와 leg의 값을 가져왔을 때, 눈은 항상 2개이며, 다리는 항상 4개이다. 하지만 뱀은 다리가 없다. 이럴 경우에는 오버라이드를 사용한다.
