2swan

Generic 사용 예제 본문

Programming/Java

Generic 사용 예제

2swan 2023. 12. 12. 15:55
● T는 제네릭과 관련된 부분.
● 제네릭은 클래스이름 뒤, 메소드의 리턴타입 앞에 붙을 수 있다.
● <T> 부분은 T라는 이름의 제네릭 타입을 선언 하는것을 의미.
● T는 Type의 약자여서 많이 사용할 뿐이지 무조건 T를 사용할 필요는 없다.
● T이외의 A, B, C 등의 단어를 사용해도 된다.
● 강제로 정해진 타입만 사용 할 수 있게 한다.
● 타입을 강제로 지정함으로써 컴파일 시 잘못된 타입의 값이 저장되는 것을 막아준다.

 

 

package generic;

public class ObjectBox {
    private Object object;

    public void set(Object obj) {
        this.object = obj;
    }

    public Object get() {
        return this.object;
    }
}
package generic;

public class ObjectBoxMain {
    public static void main(String[] args) {
        ObjectBox box = new ObjectBox();
        box.set("Kim");
        String str = (String) box.get();
        System.out.println(str.toUpperCase());

        box.set(new Integer(5));
        Integer i = (Integer) box.get();
        System.out.println(i.intValue());
    }
}

 


 

package generic;

public class GenericBox<T> {
    private T t;

    public void add(T obj) {
        this.t = obj;
    }

    public T get() {
        return this.t;
    }
}
package generic;

public class GenericBoxMain {
    public static void main(String[] args) {
        GenericBox<String> genericBox = new GenericBox<>();
        genericBox.add("kim");
        String str = genericBox.get();
        System.out.println(str.toUpperCase());

        GenericBox<Integer> intBox = new GenericBox<>();
        intBox.add(new Integer(5));
        Integer intValue = intBox.get();
        System.out.println(intValue);

        GenericBox<Object> objBox = new GenericBox<>();
        objBox.add("hello");
        String str2 = (String) objBox.get();
        System.out.println(str2);
    }
}

 

'Programming > Java' 카테고리의 다른 글

ArrayList 제네릭 타입 사용 예시  (0) 2023.12.12
컬렉션 프레임워크 종류  (0) 2023.12.12
if, Switch문 예제  (1) 2023.12.01
연산자(1)  (0) 2022.03.03
변수와 자료(3)  (0) 2022.03.03