아무래도 쓰던것만 쓰다가 보니 자주 안쓰는건 낯설다
<T extends className> 형태는 자주 사용했지만
<? super className> 은 꽤나 낯설다 =_ =;
어쨋든 알아봐야 하니 검색을 하고 글을 찾는데 이 글을 보니 감이 잡힌다.
https://stackoverflow.com/questions/4343202/difference-between-super-t-and-extends-t-in-java
extends 는
List<? extends Number> foo3 = new ArrayList<Number>(); // Number "extends" Number (in this context)
List<? extends Number> foo3 = new ArrayList<Integer>(); // Integer extends Number
List<? extends Number> foo3 = new ArrayList<Double>(); // Double extends Number
super 는
List<? super Integer> foo3 = new ArrayList<Integer>(); // Integer is a "superclass" of Integer (in this context)
List<? super Integer> foo3 = new ArrayList<Number>(); // Number is a superclass of Integer
List<? super Integer> foo3 = new ArrayList<Object>(); // Object is a superclass of Integer
묘하군
<T extends className> 형태는 자주 사용했지만
<? super className> 은 꽤나 낯설다 =_ =;
어쨋든 알아봐야 하니 검색을 하고 글을 찾는데 이 글을 보니 감이 잡힌다.
https://stackoverflow.com/questions/4343202/difference-between-super-t-and-extends-t-in-java
extends 는
List<? extends Number> foo3 = new ArrayList<Number>(); // Number "extends" Number (in this context)
List<? extends Number> foo3 = new ArrayList<Integer>(); // Integer extends Number
List<? extends Number> foo3 = new ArrayList<Double>(); // Double extends Number
super 는
List<? super Integer> foo3 = new ArrayList<Integer>(); // Integer is a "superclass" of Integer (in this context)
List<? super Integer> foo3 = new ArrayList<Number>(); // Number is a superclass of Integer
List<? super Integer> foo3 = new ArrayList<Object>(); // Object is a superclass of Integer
묘하군
'Android' 카테고리의 다른 글
android studio layout 초기화 하기 (macos) (0) | 2018.06.27 |
---|---|
room (0) | 2018.06.27 |
Observable.interval (0) | 2018.06.27 |
Rx적용... (0) | 2018.06.27 |
Dagger2 tutorial (0) | 2018.06.27 |