Override : 덮어쓰다, ~보다 유세하다.
조상클래스로부터 상속받은 메서드의 내용을 자신에 맞게 변경하는 것.
앱의 버젼업을 할 경우 모든 기능은 전 버젼에서 상속받아 오지만 고치고 싶은 부분을 오버라이딩을 통해 수정.
(전 버젼에 가서 고칠 수 없으니 그 위에 덮어쓰기)
오버라이딩한다고 조상클래스의 메서드를 상속받지 않는게 아니다. 상속은 받지만 Overriding된 메소드가 호출되는 것.
오버라이딩의 조건 >>
1. 선언부가 조상클래스의 메서드와 일치해야한다.
(이름, 매개변수, 반환타입 동일)
2. 접근제어자는 조상클래스의 메서드보다 좁은 범위로 변경할 수 없다.
final이 접근지정자가된 method는 Override가 되지 않는다.
3. 조상클래스의 메서드보다 많은 수의 예외를 선언할 수 없다.
4. 조상클래스의 인스턴스메서드를 static메서드 또는 그 반대로 변경할 수 없다.
상속관계의 객체화 >>
부모클래스명 객체명 = new 자식클래스 생성자();
자식으로 생성해서 부모에 할당되면 부모가 가진 자원만 사용가능.
Override된 메서드를 호출하면 자식 메서드가 최우선적으로 호출.
'Java' 카테고리의 다른 글
&&와 ||, &와 | //구동 차이와 활용 (0) | 2022.02.09 |
---|---|
상속 (inheritance) (0) | 2022.01.19 |
java.lang.Math 주요 method (0) | 2022.01.19 |
형변환(Casting) (0) | 2021.12.28 |
자바 문서 주석 (0) | 2021.12.28 |