Box 클래스 : Object의 후손이라면 무엇이든 받기 가능

용도 : 데이터 캡슐화, 데이터 객체, 메서드로 전달

public class Box {
private Object data;

public void setObj(Object data) {
    this.data = data;
}

public Object getObj() {
    return data;
}
}

Generic 이용 : Box<자료형>

사용 이유 : 타입 안정성, 형 변환 간소화

public class Box<T> {
private T data;

public void setData(T data) {
    this.data = data;
}

public T getData() {
    return data;
}
}