프로그램 문제

java - Box<T> 스왑문제

낙산암 2021. 11. 4. 16:59

class Box7<T> {
    private T ob;
    
    public void set(T o) { 
        ob = o; 
    }
    
    public T get() { 
        return ob; 
    }
}

class DDBoxDemoMain {
    public static <T extends Number> void swapBox(Box7<T> box1, Box7<T> box2) {
        T temp = box1.get();
        box1.set(box2.get());
        box2.set(temp);        
    }

    public static void main(String[] args) {
        Box7<Integer> box1 = new Box7<>();
        box1.set(99);

        Box7<Integer> box2 = new Box7<>();
        box2.set(55);

        System.out.println(box1.get() + " & " + box2.get());
        swapBox(box1, box2);
        System.out.println(box1.get() + " & " + box2.get());
    }
}