728x90
반응형
생성자 내의 오버로딩과는 다르다.
2022.10.07 - [자바/개념정리] - [JAVA] 생성자 - 묵시적 생성자, 명시적 생성자
[JAVA] 생성자 - 묵시적 생성자, 명시적 생성자
생성자란 생성자는 객체가 만들어 질 때 자동 실행이 되는 것으로, 객체를 생성 할 시 초기화를 담당하는 기능이다. 생성자의 이름이 클래스의 이름과 같아야한다. 묵시적 생성자 묵시적 생성자
jjh93.com
메소드 오버라이딩(overriding)
상속 관계에 있는 클래스들 간에 같은 이름의 메소드를 정의하는 경우이를 오버라이딩(overriding)이라고 한다.
오버라이딩은 상위 클래스의 메소드를 하위 클래스의 메소드로 교체하는 것이다.
상위 클래스의 메소드와 하위 클래스의 메소드가 메소드 이름은 물론 매개변수의 타입과 개수까지도 같아야 한다.
코드
class OIaa{
public void show(String str) {
System.out.println("상위 클래스 메소드 수헹 : " + str);
}
}
class OIbb extends OIaa{
public void show(String s) {
System.out.println("하위 클래스 메소드 show() 수헹 : " + s);
}
}
public class OverridingTest2 {
public static void main(String[] args) {
OIbb oibb = new OIbb();
oibb.show("처음 시작하는 자바");
}
}
결과
하위클래스로 대체된 것을 볼 수 있다.
@Override
자바 컴파일러는 @Override 주석이 사용되어 메소드가 선언되면 상위 클래스의 메소드와 정확하게 일치하는지 검사하여 일치하지 않은 경우에는 컴파일 오류를 발생시킨다.
예시
오버라이드 주석을 처리하면 위와같이 에러가 나는 부분에 에러를 띄워준다.
728x90
반응형
'JAVA > 개념정리' 카테고리의 다른 글
[JAVA] Object 클래스 (0) | 2022.10.12 |
---|---|
[JAVA] Super (0) | 2022.10.12 |
[JAVA] 상속과 생성자 (0) | 2022.10.12 |
[JAVA] 상속 extends (0) | 2022.10.11 |
[JAVA] 접근제어자(Access Modifier) (0) | 2022.10.07 |
댓글