JAVA

overriding 이란?

junnrecorder 2023. 8. 12. 18:34

 Overriding : 조상 클래스로부터 상속받은 메서드의 내용을 변경하는 것.

 

ex)

class Point {
	int x;
    int y;
    
    String getLocation() {
    	return "x : " + x + ", y :" + y;
    }
}

class Point3D extends Point {
	int z;
    
    String getLocation() {
    	return "x : " + x + ", y : " + y + ", z : " + z;
    }
}

 

오버라이딩의 조건 (자손 클래스에서 오버라이딩하는 메서드는 조상클래스의 메서드와)

- 이름이 같아야 한다.

- 매개변수가 같아야 한다.

- 반환타입이 같아야 한다.

 

주의)

조상 클래스의 메서드를 자손 클래스에서 오버라이딩할 때,

- 접근 제어자를 조상 클래스의 메서드보다 좁은 범위로 변경할 수 없다.

- 예외는 조상 클래스의 메서드보다 많이 선언할 수 있다.

- 인스턴스메서드를 static 메서드로 또는 그 반대로 변경할 수 없다.

'JAVA' 카테고리의 다른 글

Map 인터페이스  (0) 2023.08.13
List 인터페이스  (0) 2023.08.13
Collections Framework  (0) 2023.08.12
overloading 이란?  (0) 2023.08.12
스택  (0) 2023.07.24