형변환

신예환·2022년 11월 1일
0

자바

목록 보기
7/12
post-thumbnail

저장소를 만들고 i의 값을 저장한 후 다시 받아보세요

수동박싱, 언박싱에서 오토박싱, 언박싱으로 변환되는 과정을 이해할 수 있어야 한다.

/**
 * Object i = 20;
 * Object i = new Integer(20);
 * Object i = (Object)new Integer(20);
 */
class Main {
	public static void main(String[] args) {
		int i = 10;

		저장소 a저장소 = new 저장소();
		/*Integer iObj = new Integer(i); // 수동 박싱
		a저장소.저장(iObj);
		Object obj = a저장소.주세요();
		iObj = (Integer)obj;
		i = iObj.intValue(); // 수동 언박싱, 다시 숫자화 시킨다.*/

		/*Integer iObj = i; // 오토 박싱
		a저장소.저장(iObj);*/
		// Integer iObj;
		a저장소.저장(i);
		/*Object obj = a저장소.주세요();
		iObj = (Integer)obj;*/
		/*iObj = (Integer)a저장소.주세요();
		i = iObj; // 수동 언박싱, 다시 숫자화 시킨다.*/
		// i = ((Integer)a저장소.주세요()).intValue();
		// i = (Integer)a저장소.주세요();
		i = (int)a저장소.주세요();


		System.out.println(a저장소.주세요());
		// 출력 : 10
	}
}
class 저장소 {
	Object data;
	void 저장(Object o) {
		data = o;
	}
	Object 주세요() {
		return data;
	}
}
profile
더디가도 함께가자

0개의 댓글