자바에서는 전통적으로 자원을 닫고자 할 때 close() 메소드를 사용하여 닫는 경우가 다반사이다. 하지만 개발자들은 누구나 다 실수를 하기 마련이므로 close를 하지 않는 경우가 발생할 수 있다. 이런 경우 심각하게는 성능상 이슈가 발생할 수 있다는 사실을 알아야 한다. 이런 경우를 대비하여 Java에서는 2가지 방법을 제시하고 있다. try-finally try-with-resources(Java 7 이후) 먼저 try-finally 부터 살펴보자. try-finally static String firstLineOfFile(String path) throws IOException { BufferedReader br = new BufferedReader(new FileReader(path)); try..
많은 클래스들은 하나 이상의 자원에 의존하고 있다. 예를 통해 살펴보자. 보통 맞춤법 검사기(SpellChecker)는 사전(Lexicon)에 의존하고 있다. 정적 유틸리티 클래스와 싱글턴을 활용한 맞춤법 검사기 그럼 아이템03에서 언급한 싱글턴과 아이템04에서 언급한 정적 유틸리티 클래스을 활용하여 소스를 구성해보자. //아이템 03_싱글턴 public class SpellChecker { private static final Lexicon dictionary = ...; //사전에 의존 private SpellChecker(){} public static SpellChecker INSTANCE = new SpellChecker(...); //싱글턴 활용 public static boolean isVa..
- Total
- Today
- Yesterday
- 복사 팩토리
- 정적팩터리메서드
- effectivejava
- ifPresent
- 점층적 생성 패턴
- jdk버전
- java
- java8
- try catch finally
- flatMap
- 생성자
- 빈 순환 참조
- 김영한
- 빌더 패턴
- Effective Java
- 팩토리 메소드 패턴
- 인프런
- mustache
- 스프링부트
- springboot
- 자바8
- package-private
- JPA
- @Lazy
- 이펙티브 자바
- Spring
- 연관관계
- 이펙티브자바
- try with resources
- junit
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |