1. 오버라이딩(overriding)
- 조상클래스로부터 상속받은 메서드의 내용을 변경하는 것.
- 상속받은 것을 그대로 사용하기도 하지만, 자손클래스 자신에 맞게 변경하는 경우가 많다.
2. 오버라이딩의 조건
- 선언부가 조상의 것과 같아야 한다. (이름, 매게변수, 리턴타입)
- 접근제어자는 조상클래스의 메서드보다 좁은 범위로 변경 할 수 없다.
- 조상클래스의 메서드보다 많은 수의 예외를 선언할 수 없다.
- 인스턴스메서드를 static 메서드로 또는 그 반대로 변경할 수 없다.
3. 오버로딩과 오버라이딩
- 오버로딩(overloading) : 하나의 클래스에 같은 이름의 메서드를 여러 개 중복 정의하는 것
- 오버라이딩(overriding) : 상속받은 메서드의 내용을 재정의(변경)하는 것(chang, modify)
class Parent { void parentMethod() {} } // Parent public class Overloaing_Overriding extends Parent { void parentMethod() {} // 오버라이딩 void parentMethod(int i) {} // 오버 로딩 void Overloaing_Overriding() {} void Overloaing_Overriding(int j) {} // 오버로딩 } // Overloaing_Overriding
'Java > Java SE' 카테고리의 다른 글
Java 제어자(modifier), 접근 제어자(access modifier) (0) | 2013.08.06 |
---|---|
Java super, super() (0) | 2013.08.06 |
Java 상속(inheritance) (0) | 2013.08.05 |
Java 배열(array) (0) | 2013.08.04 |
Java 난수를 발생시키는 2가지 방법 (0) | 2013.08.03 |