자바7 출시가 점점 앞으로 다가오는데, 마음에 드는 자바7의 몇 가지 특징들은 다음과 같다. try-with-resources멀티캐치(multicatch) switch-case에 문자열 지원 Fork/JoinECC 암호화 기능 제공 try-with-resources 이용 자원 해제 자동 처리 사실 이거 진작에 필요했던거다. 뭔가 자원을 생성하고 사용하고 해제하는 코드는 항상 다음과 같이 구조가 중복되는 코드를 작성해야 했다. finally 블록의 자원 해제 코드 정말 하는 거 없이 여러 줄 차지한다. SomeResource resource = null; try { resource = getResource(); use(resource); } catch(...) { ... } finally { if (res..
java8이전에 FunctionalInterface와 람다표현식을 배웠다. 아직 못봤거나 까먹었다면 여기에가서 다시 보자!StreamStream 에는 많은 기능이 있다. 다 설명할 수는 없지만 중요한 몇가지를 공부해보겠다. 자바의 컬렉션들은 Stream을 사용 할 수 있다. 혹은 스트림을 만들 수 있다. 흔히 쓰는 List를 예로 들어 공부해보겠다. 그전에 알아두어야 할 용어가 있다. Intermediate Operation Method 와 Terminal Operation Method이다. Intermediate Operation Method는 중간단계로써 스트림을 리턴하기 때문에 계속 Method Chaining 통해 지시 할 수 있다. 그리고 Terminal Operation Method는 스트림을..
jvm 메모리jvm에서 메모리 영역인 런타임 데이터 영역의 구조를 그림으로 그리면 다음과 같다.크게 3부분으로 나눠진다. 1. 메소드 영역(클래스 영역)필드나 메서드의 메타데이터 저장static 변수, 메소드 저장바이트 코드 저장상수 풀(Constant Pool)2. 스택 영역Last In First Out(LIFO)메서드 호출 시마다 각각의 프레임 생성메서드 안에서 사용되어지는 값들을 저장호출된 메서드의 매개변수, 지역변수, 리턴 값 및 연산 시 일어나는 값들을 임시로 저장 메서드 수행이 끝나면 프레임별로 삭제3. 힙 영역new 연산자로 생성된 객체와 배열을 저장하는 공간클래스 영역에 로드된 클래스만 생성가능GC를 통해 메모리 반환출처 : http://wonwoo.ml/index.php/post/cat..