본문 바로가기

언어 기초/JAVA

[자바의정석 | Chapter 07 객체지향 프로그래밍2] 오버라이딩

1. 학습목표

오버라이딩의 의미를 이해할 수 있다.

2.필요 개념 문장정리

오버라이딩

  • 조상 클래스로부터 상속받은 메서드의 내용을 변경하는 것을 오버라이딩이라고 한다.
  • 오버라이딩은 메서드의 내용만을 새로 작성하는 것이므로 메서드의 선언부는 조상의 것과 완전히 일치해야 한다. 

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

조상 클래스의 메서드보다 많은 수의 예외를 선언할 수 없다.

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

 3. 코드작성

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;
    }
}

4. 마무리

오버로딩은 기존에 없는 새로운 메서드를 추가하는 것이고 오버라이딩은 조상으로부터 상속받은 메서드의 내용을 변경하는 것이다.

앞으로 실전예제를 통해 내용을 채워나가도록 하겠다.