Java

오버로딩(Overloading)&오버라이딩(Overriding)

꿈꾸는야오옹 2022. 9. 5. 11:23

오버로딩(Overloading)

: 같은 이름으로 서로 다른 형식을 가지고 있는 메소드 여러개를 선언 하는 것

 

1. 메소드 이름이 같아야 한다.

2. 리턴형이 같아도 되고 달라도 된다.

3. 파라미터 개수가 달라야 한다.

4. 파라미터 개수가 같을 경우, 자료형이 달라야 한다.

 

오버라이딩(Overriding)

: 부모 클래스로부터 상속 받은 메소드를 자식 클래스에서 재 정의 하여 사용하는 것

 

사용시에는 자식클래스로 인스턴스를 생성하고 메소드를 호출하면 부모 메소드는 은닉되고 자식클래스에서 재정의된 메소드가 호출된다. 이때, 부모의 메소드를 호출 하고 싶은 경우 [super.(메소드명)] 이런 형식으로 사용한다.([]사이의 값을 입력하는것)

 

1. 오버라이드 하고자 하는 메소드가 상위 클래스에 존재해야한다.

2. 메소드 이름이 같아야 한다.

3. 메소드 파라미터 개수, 자료형이 같아야 한다.

4. 리턴형이 같아야 한다.

5. 상위메소드와 동일하거나 내용이 추가되어야 한다.