반응형
제네릭 싱글턴 팩터리
정의
- 제네릭으로 타입 설정 가능한 인스턴스를 만들어두고, 반환 시에 제네릭으로 받은 타입을 이용해 타입을 결정한다.
장점
- 여러 타입으로 내부 객체를 받아도 에러가 나지 않는다
- 큰 유연성을 제공한다
public class GenericSingletonFactory {
public static final Set EMPTY_SET = new HashSet();
public static final <T> Set<T> emptySet() {
return (Set<T>) EMPTY_SET;
}
public static void main(String[] args) {
Set<String> set1 = GenericSingletonFactory.emptySet();
Set<Integer> set2 = GenericSingletonFactory.emptySet();
set1.add("ab");
set2.add(10);
System.out.println("set1.toString() = " + set1.toString());
System.out.println("set2.toString() = " + set2.toString());
}
}
/*
출력
set1.toString() = [ab, 10]
set2.toString() = [ab, 10]
*/
반응형
'개발' 카테고리의 다른 글
[제네릭] Java에서 배열을 공변(covariant)으로 만든 이유는 무엇인가? (0) | 2022.02.14 |
---|---|
[제네릭] Unbounded Wildcard Type인 컬렉션에는 왜 null 값만 들어가는가? (0) | 2022.02.07 |
[Java] 공급자 Supplier<T> (0) | 2022.01.25 |
[Java] 예제 코드로 알아보는 다형성 - 2 (0) | 2022.01.24 |
[Java] 예제 코드로 알아보는 다형성 - 1 (0) | 2022.01.24 |