java (5) 썸네일형 리스트형 Java8에 새로 추가된 것은 뭐가 있을까 ?_2 (funtional 패키지, Stream, 디폴트 메서드 등) [배경] 저번에는 버전이 java8로 넘어가면서 '함수형 프로그래밍 패러다임의 지원' 에 대해 기본적인 내용과 어떤 방식이 변화 되었고 어떤 것이 새로 추가가 되었는지 알아보았다. 이번에는 Lambda 표현식에 이어 funtional 패키지 Stream과 디폴트 메서드 등에 대해 알아보자. [내용]2. java.util.funtional 패키지Java 8에서 제공하는 주요 Functional 인터페이스는 java.util.function 패키지에 있다.PredicateSupplierConsumerFunctionUnaryOperatorBinaryOperatorPredicatetest()라는 메소드가 있으며, 두 개의 객체를 비교할 때 사용하고 boolean을 리턴한다. 추가로 and(), negative(.. jAVA11에 새로 바뀐것들을 알아보자. [배경]자바를 공부하면서 java8 이후에 나온 중요한 릴리즈 중에 하나인 java11에 대해 더 깊게 알아보려고 한다.[내용]1. String 관련 메서드 추가Java 8 에서 부족했던 문자열 관련 메서드들이 추가되었다.isBlank()문자열이 비어있거나, 빈 공백으로만 이루어져 있으면 true 를 리턴하는 메서드lines()문자열을 줄 단위로 분리하여 Stream 형태로 리턴하는 메서드strip(), stripLeading(), stripTrailing()문자열의 앞뒤, 앞쪽, 뒤쪽 공백을 제거하는 메서드repeat(int count)문자열을 주어진 횟수(count)만큼 반복하여 새로운 문자열을 생성하는 메서드 2. 새로운 표준 HTTP 클라이언트 API 도입표준 API이전의 HttpURLConne.. Java8에 새로 추가된 것은 뭐가 있을까 ?_1 (Lambda 표현식, funtional 패키지) [배경] 자바를 공부하면서 람다 표현식에 대해 알게 되었는데, 버전이 java8로 넘어가면서 새로 추가가 되었다고 해서 java8에는 또 어떤것이 달라졌는지, 어떤 메소드들이 추가되었는지 알아보자. 들어가기에 앞서 먼저 Java 8의 핵심을 요약하면 "함수형 프로그래밍 패러다임의 지원" 이다. 여기서 함수형 패러다임은 뭘까?? 보통 객체지향 패러다임 에서는 객체 스스로가 상태를 가지고 있고, 객제간에 에시지를 전달하면서 협력하게 된다. 객제지향 프로그래밍의 경우, 클래스 디자인과 객체들의 관계를 중심으로 코드작성이 이루어진다. 따라서 상태, 멤버변수, 메서드 등이 긴밀한 관계를 가지고 있다. 특히 멤버변수가 어떤 상태를 가지고있는가에 따라 결과가 달라진다. 하지만 함수형 패러다임 에서는 작은 단위의.. G1GC에 대해 알아보자 [배경] java를 공부하던 중 GC 과정에 관심이 생겨 열심히 구글링 하던중 java9 부터는 G1GC가 기본값으로 들어가는 만큼 이전 GC 와 뭐가 다르고 어떤 차이가 있는지 알아보겠습니다. G1GC에 대한 간단한 소개G1GC (Garbage First Garbage Collector)는 대용량의 메모리가 있는 멀티 프로세서 시스템을 위해 제작되었습니다.빠른 처리 속도를 달성하면서 일시 중지 시간(STW : Stop The World)의 최소화를 충족시키기는 것이 G1GC의 목표입니다.오라클에서는 여러 기술들을 도입하여 이 목표를 수행할 수 있게 설계하였다고 소개하고 있습니다.Heap은 동일한 크기(메모리 크기에 따라 상이)의 영역으로 나뉘어 집합으로 분할되어 연속된 가상 메모리로 존재하게 됩니.. [JVM] JVM 가장 기본적인 동작 과정 배경 : JAVA 개발자로 취업을 준비하고 있는데, JAVA 가상머신이 동작하는 환경에 대해 궁금해서 개발 지식을 정리해 보았다. 먼저 JVM이란???? - 자바 가상 머신으로 자바 바이트 코드를 실행할 수 있는 주체다. - CPU나 운영체제(플랫폼)의 종류와 무관하게 실행이 가능하다. - 즉, 운영체제 위에서 동작하는 프로세스로 자바 코드를 컴파일해서 얻은 바이트 코드를 해당 운영체제가 이해할 수 있는 기계어로 바꿔 실행시켜 주는 역할을 한다.JVM의 구성을 살펴보면 크게 4가지(Class Loader, Execution Engine, Garbage Collector, Runtime Data Area)로 나뉜다. 1. Class Loader자바에서 소스를 작성하면 Person. java 처럼 ... 이전 1 다음