JAVA
-
LinkedBlockingQueueJAVA 2019. 5. 10. 17:31
LinkedBlockingQueue The optional capacity bound constructor argument serves as a way to prevent excessive queue expansion. The capacity, if unspecified, is equal to Integer.MAX_VALUE. LinkedBlockingQueue 은 이름에서도 알 수 있듯이 각각의 블로킹 큐가 링크드 노드로 연결된 큐이다. 큐에서 꺼내갈 원소가 없을 경우 해당 쓰레드는 wait 상태에 들어간다. 따라서, LinkedBlockingQueue는 생산자가 많고 하나의 소비자일 경우에 사용하면 좋다. 또한 이 글의 서두에서 언급한 것처럼, LinkedBlockingQueue은 큐의 폭발을 막기 ..
-
자바7 try-with-resources문JAVA 2019. 5. 10. 17:25
try-with-resource문은 무엇인가? 자바7은 try/catch/finally문과 함께 유용하게 사용할 수 있는 문법을 제공한다. AutoCloseable 인터페이스를 구현한 FilReader 클래스를 이용하면 아래와 같이 자원 종료를 걱정할 필요가 없다. => 자원 해제 자동처리 기능 try-with-resources문이 도입되기 전에는 reader 인스턴스를 명시적으로 종료해야 했다. 그렇지 않으면 예외를 발생시키거나 종료되지 않거나 종료를 잊었을 때 이상한 동작을 하게 된다. => 이전에는 자원을 생성, 사용하고 해제하는 코드는 항상 finally를 이용해서 close()를 시키는 구조가 중복되는 코드를 작성해야 했지만, 자바7에서 try-width-resources가 추가되면서 try코드..
-
IntelliJ 단축키JAVA 2019. 4. 8. 17:35
단축키 찾기, 검색 관련된 단축키 찾기: ⇧⇧ 전체에서 검색: ⌘ + ⇧ + f 클래스 내에서 검색: ⌘ + f 특정 메소드(symbol)찾기: ⌘ + ⌥ + o 최근 열었던 클래스 및 파일 찾기: ⌘ + e 메소드, 변수 사용된 곳 찾기: ⌥ + F7 프로젝트내 터미널 열기: ⌥ + F12 변경 클래스명, 함수명 이름 변경 (전체 적용됨): ⇧ + F6 검색 및 변경: ⌘ + r / ⌘ + ⇧ + r 탐색 메소드 구현체로 이동: ⌘ + b 탭의 왼쪽으로 이동 : ⌘ + ⇧ + [ 탭의 오른쪽으로 이동 : ⌘ + ⇧ + ] 히스토리 이전으로 이동 : ⌘+ [ 히스토리 이전으로 이동 : ⌘+ ] 화면 수직 분할: ⌃ + [ 화면 수평 분할: ^ + ] 왼쪽 패키지창으로 이동: ⌘ + 1 코딩 소스코드 자동..
-