이펙티브 자바 - Item31. 한정적 와일드카드를 사용해 API 유연성을 높이라.
한정적 와일드카드를 사용해 API 유연성을 높이라 아이템 28 에서도 나온 얘기이지만 매개변수화 타입은 불공변입니다. 즉 서로 다른 타입 Type1과 Type2가 있을 때 List은 List의 하위 타입도 상위 타입도 아닙니다. 조금 더 쉽게 표현하면 List은 List의 하위타입도 아니고 상위 타입도 아닙니다. 그냥 타입이 다르며, List는 모든 것을 담을 수 있지만 List은 문자열만 담을 수 있기에 List은 List가 하는일을 제대로 수행하지 못합니다. 💡결함이 있는 메서드(컴파일 에러 발생) Integer는 Number의 하위 타입이니 논리적으로는 문제가 없을거 같지만 실제로는 컴파일 에러가 발생합니다. 원인은 매개변수화 타입이 불공변이기 때문에 Number로 변환할 수 없다는 것입니다. pu..
스터디/이펙티브 자바
2022. 7. 22. 23:46
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- java ThreadLocal
- pipe and filter architecture
- 서비스 기반 아키텍처
- 공간 기반 아키텍처
- spring boot redisson 분산락 구현
- 트랜잭셔널 아웃박스 패턴 스프링 부트 예제
- transactional outbox pattern
- spring boot redis 대기열 구현
- polling publisher spring boot
- spring boot excel download paging
- redis sorted set으로 대기열 구현
- java userThread와 DaemonThread
- microkernel architecture
- spring boot redisson destributed lock
- @ControllerAdvice
- service based architecture
- redis 대기열 구현
- transactional outbox pattern spring boot
- pipeline architecture
- spring boot redisson sorted set
- space based architecture
- 람다 표현식
- redis sorted set
- spring boot 엑셀 다운로드
- 레이어드 아키텍처란
- 자바 백엔드 개발자 추천 도서
- spring boot poi excel download
- 트랜잭셔널 아웃박스 패턴 스프링부트
- JDK Dynamic Proxy와 CGLIB의 차이
- spring boot excel download oom
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
글 보관함