package com.cast3;

public class CastingTest1 {
	public static void main(String[] args){
		FireEngine fe = new FireEngine();
		fe.water();
		
		Car car = null; //객체 선언(객체의 주소가 보관될 변수 선언)
		car = fe;	//자식 클래스 타입 -> 부모 클래스 타입 (업캐스팅)자동형변환
		//car.water();
		
		FireEngine fe2 = null;
		fe2 = (FireEngine)car;//부모 클래스 타입->자식 클래스 타입
		fe2.water();          //(다운 캐스팅)명시적 형변환
	}
}

class Car{
	String color;
	int door;
	
	void drive(){
		System.out.println("Drive brrrrr~");
	}
	
	void stop(){
		System.out.println("stop!!!");
	}
}

class FireEngine extends Car{
	void water(){
		System.out.println("water!!!");
	}
}


+ Recent posts