비전공자의 개발과 친해지기/클래스와 객체

[JAVA : 클래스와 객체]7. 오버라이딩

justdoIT0730 2022. 6. 10. 12:14
728x90
728x90

오버라이딩

  오버라이딩(overriding)이란 부모 클래스의 멤버를 자식 클래스에서 재정의하여 사용하는 것을 말합니다. 

public class Main {

	public static void main(String[] args) {
		Parent p = new Parent();
		Child c = new Child();
		
		p.print();
		c.print();
	}

}

// 부모 클래스 정의
class Parent {
		
	public int iInt;
	
	public void print() {
		System.out.println("Parent Class");
	}
}

// 자식 클래스 정의
class Child extends Parent{

	public void print() {
		System.out.println("Child Class");
	}
}

  위 소스코드에서 Child 클래스에 print 메소드를 정의했습니다. 그리고 자식 클래스에서 부모 클래스에 정의된 print 메소드를 다시 정의했습니다.

 

  부모 클래스의 멤버를 상속 받았지만, 자식 클래스에서 해당 멤버의 내용을 수정했으므로 자식 클래스 객체에서는 바뀐 내용이 적용됩니다. 단, 부모 클래스에는 전혀 영향을 주지 않습니다.

 

 

 

 이처럼 부모로부터 상속받은 멤버를 자식에서 재정의하는 것을 "오버라이딩"이라고 합니다.

 

 

 

 

 

<"오버로딩"과 이름은 비슷하지만, 오버로딩과 오버라이딩에는 큰 차이가 있습니다. >

 
 
728x90
728x90