note

클래스 -> 인터페이스 형변환 본문

자바/인터페이스

클래스 -> 인터페이스 형변환

투한 2011. 12. 26. 11:52
package com.inter2;//인터페이스 타입으로 형변환

interface A{
	public abstract int getA();
}

public class Round02 implements A{
	//인터페이스 A의 추상메소드 getA()를 구현
	public int getA(){
		return 10;
	}
	public String getMsg(){
		return "겨울";
	}

	public static void main(String[] args) {
		Round02 rd = new Round02();
		System.out.println(rd.getA());
		System.out.println(rd.getMsg());
		
		A a = rd; //클래스 타입 -> 인터페이스 타입
					//자동적으로 형변환
		System.out.println(a.getA());
		/*System.out.println(a.getMsg());
		호출 영역을 벗어나 호출 불가
		인터페이스 안에 있는 추상메소드만 인식됨*/
		
		Round02 rd2 = (Round02)a; //인터페이스 타입 -> 클래스 타입
									//명시적 형변환
		
		System.out.println(rd2.getA());
		System.out.println(rd2.getMsg());
	}

}

10
겨울
10
10
겨울


'자바 > 인터페이스' 카테고리의 다른 글

인터페이스  (0) 2011.12.26
인터페이스 공통자료형 공통표준화  (0) 2011.12.26
인터페이스 쓰임새  (0) 2011.12.26
인터페이스 다중 상속  (0) 2011.12.26
인터페이스 2  (0) 2011.12.26