본문 바로가기
  • log.info(" Nice Developer ");
Study/Java

[JAVA] JAVA 8 버전(1.8.0)에 대하여

by kwan97 2023. 6. 16.

# JAVA 버전 관련 간단 상식

Q. JAVA 8JAVA 1.8.0은 서로 다른 버전을 뜻하는 명칭이다?

=> 정답은 X 이다.

같은 말이며, 필자는 JAVA 8이라고 명칭을 사용하는 것을 추천하고 실제 많은 레퍼런스에서도 JAVA 8로 표기하고 있다.

 

Q. LTS(Long Term Support) 버전이란?

=> Oracle에서 계속 유지보수 및 관리 해주는 버전으로, 

JAVA 8/11/17버전이 LTS버전에 해당한다. (LTS의 반댓말 = non-LTS)

JAVA 버전 별 사용 순위


# JAVA  8의 주요 기능 소개

1. Lambda(람다)

Lambda는 함수를 하나의 표현식으로 나타낸것을 의미한다.

또다른 이름으로 "익명 함수"라고도 부른다.

List<Integer> numList = Arrays.asList(0, 1, 2);

// 1. 반복문 - Iterator
for(Integer num: numList) {
    System.out.println(num); // 0, 1, 2
}

// 2. 람다 표현식
numList.forEach(x -> System.out.println(x)); // 0, 1, 2
  • 장점
    • 코드 길이 단축
    • 간결성
  • 단점
    • 재활용 불가

2. 인터페이스 default, static 메소드

인터에페이스는 구현부가 없는 추상메소드만 가질 수 있었는데,

default, static 지시어로 생성된 메서드는 구현부를 가질 수 있다.

  • default 메서드
    • 재정의 o
    • 참조 변수로 호출
  • static 메서드
    • 재정의 x
    • 클래스 메서드이기 때문에 객체 생성하지 않고 직접 사용

3. Stream(스트림)

Collection의 요소들을 하나씩 순회하며 필요한 작업을 간결하고 편리하게 처리 할 수 있게 해주는 기능이다.

 

  • Stream 관련 주요 함수
    • filter
    • sort
    • map
    • foreach
    • range
    • iterate
    • limit
    • generate

4. LocalDateTime

로컬 시간을 자동 불러오기 및 사용 할 수 있게해주는 기능이다.

import java.time.LocalDateTime;

class Main {
    public static void main(String[] args) throws Exception {

        LocalDateTime startTime = LocalDateTime.now();
	}
}

 

728x90

'Study > Java' 카테고리의 다른 글

[JAVA] JVM의 깊은 개념 및 구조  (0) 2023.06.09
[JAVA] Class란?  (0) 2022.05.29
[JAVA] 생성자  (0) 2022.05.29
[JAVA] 객체(=Instance) 개념 잡기!  (0) 2022.05.27
[JAVA] 메소드(=Method)에 대하여  (0) 2022.05.27

댓글