티스토리 뷰

728x90

 

package kr.co.goodee39.date1105;

public class Ex09ParentClass1 {
	public void method1() {
		System.out.println("ParentClass에서 실행된 method1()");
	}
}
package kr.co.goodee39.date1105;

public class Ex09ChildClass extends Ex09ParentClass1 {
	//부모까지 갈 필요없이, 자식에서 찾아서 실행 가능
	@Override
	public void method1() {
		System.out.println("자식 클래스에서 실행한 method1()");
	}
}
package kr.co.goodee39.date1105;

public class Ex09Override {
	//Override
	/*
	 	- 자식클래스에서 부모 클래스에 정의된 기능을 같은 이름으로 선언해 덮어씌우는 것을 말함
	 	- 메모리에서 그 기능 검색시 자식 쪽에서 호출을 가로채, 부모 클래스 기능 검색 막는 매커니즘
	 	- 강제로 부모 클래스 기능 접근하고 싶다면, super.method명() 이용해 부모 객체에 접근 가능
	 */
	
	public static void main(String[] args) {
		Ex09ChildClass cc1 = new Ex09ChildClass();
		cc1.method1(); //ParentClass에서 실행된 method1() :  ChildClass는 상속 후 아무것도 안함
					   //자식 클래스에서 실행한 method1() : ChildClass에서 재정의 시 (부모 method1에 덮어씌워버림)
	}

}

OVERRIDE 수행 전

 

OVERRIDE 수행 후 

728x90
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함