2013년 여름이후로 출시가 연기된 자바8(JAVA8)은 오라클의 첫번째 자바 버전이라고 할 수 있다.
자바8에는 모듈화(jigsaw Project), 람다식(Lambda)지원등의 내용이 포함된다고 한다.
자바8에는 모듈화(jigsaw Project), 람다식(Lambda)지원등의 내용이 포함된다고 한다.
1. Jigsaw Project
- Java 응용프로그램과 Java 플랫폼을 위한 모듈 시스템
- 효율성 있는 Java 프로젝트 환경을 만들기 위해서
- 동일한 라이브러리를 중복으로 사용하거나, 두 개의 라이브러리 에서 공통으로 사용하는 다른 라이브러리가 있는데 서로 다른 버전을 필요로 하는 등의 이유로 JAR Hell
(Windows의 DLL Hell에서 파생됨)이 발생하게 되는데 이는 Jigsaw 프로젝트에서 제공하는 모듈 지정과 해당 모듈 별 버전 관리 기능 등으로 해결될 수 있다.
- Java Platform 크기와 성능 최적화
2. Lambda Project
- 닷넷 처럼 람다식 지원
- Java 언어에서 멀티 코어 용 응용프로그램을 작성할 때 보다 쉽고 간결하게 작성할 수 있는 람다(λ) 식 표현과 함께 벌크 패러럴 작업과 관련된 Java Collections API를 포함한다.
[예1]
[람다식 사용전]
public void start(Stage primaryStage) {
primaryStage.setTitle("Hello World!");
Button btn = new Button();
btn.setText("Say 'Hello World'");
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
System.out.println("Hello World!");
}
}); ......
......
}
[사용후]
public void start(Stage primaryStage) {
primaryStage.setTitle("Hello World!");
Button btn = new Button();
btn.setText("Say 'Hello World'");
btn.setOnAction(
event -> System.out.println("Hello World!")
);
......
......
}
[예2]
public class Calculator {
interface IntegerMath {
int operation(int a, int b);
}
public int operateBinary(int a, int b, IntegerMath op) {
return op.operation(a, b);
}
public static void main(String... args) {
Calculator myApp = new Calculator();
IntegerMath addition = (a, b) -> a + b;
IntegerMath subtraction = (a, b) -> a - b;
System.out.println("40 + 2 = " +
myApp.operateBinary(40, 2, addition));
System.out.println("20 - 10 = " +
myApp.operateBinary(20, 10, subtraction));
}
}
[오프라인 개강예정강좌, 오프라인교육장에 오시면 보다 자세히 배울 수 있습니다.]
오라클자바커뮤니티에서 운영하는 개발자 전문교육 ,개인80%환급(www.onjprogramming.co.kr)
[주간]
[12/02]안드로이드개발자과정
[12/02]iPhone 하이브리드 앱 개발 실무과정
[12/09][기업100%환급]Spring Framework,MyBatis,Hibernate실무프로젝트과정
[12/16][기업100%환급]PL/SQL,ORACLE HINT,TUNING
[12/23][기업100%환급]자바기초에서 JDBC, Servlet/JSP까지
[12/23][기업100%환급]SQL기초에서 Schema Object까지
[평일야간]
[12/03]웹퍼블리싱 마스터
[12/03]iPhone하이브리드앱개발실무과정
[12/04]SQL초보에서실전전문가까지
[12/05]Spring3.X, MyBatis, Hibernate실무과정
[12/05]자바초보에서안드로이드까지
[12/09]C#,ASP.NET마스터
[12/09]JAVA&WEB프레임워크실무과정
[주말]
[11/30]SQL초보에서전문가까지
[11/30]C#,ASP.NET마스터
[12/07]Spring3.X,MyBatis,Hibernate실무과정
[12/14]자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
[12/14]자바초보에서안드로이드까지
[12/14]웹퍼블리싱 마스터
오라클자바커뮤니티에서 운영하는 개발자 전문교육 ,개인80%환급(www.onjprogramming.co.kr)
[주간]
[12/02]안드로이드개발자과정
[12/02]iPhone 하이브리드 앱 개발 실무과정
[12/09][기업100%환급]Spring Framework,MyBatis,Hibernate실무프로젝트과정
[12/16][기업100%환급]PL/SQL,ORACLE HINT,TUNING
[12/23][기업100%환급]자바기초에서 JDBC, Servlet/JSP까지
[12/23][기업100%환급]SQL기초에서 Schema Object까지
[평일야간]
[12/03]웹퍼블리싱 마스터
[12/03]iPhone하이브리드앱개발실무과정
[12/04]SQL초보에서실전전문가까지
[12/05]Spring3.X, MyBatis, Hibernate실무과정
[12/05]자바초보에서안드로이드까지
[12/09]C#,ASP.NET마스터
[12/09]JAVA&WEB프레임워크실무과정
[주말]
[11/30]SQL초보에서전문가까지
[11/30]C#,ASP.NET마스터
[12/07]Spring3.X,MyBatis,Hibernate실무과정
[12/14]자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
[12/14]자바초보에서안드로이드까지
[12/14]웹퍼블리싱 마스터
댓글 없음:
댓글 쓰기