Java 8, Java 9, and Beyond!
|
|
- Lee Hodges
- 6 years ago
- Views:
Transcription
1 Java 8, Java 9, and Beyond! Mark Reinhold Insert Presenterʼs Name Here Insert Presenterʼs Title Here Chief Architect, Java Platform Group, Oracle Jfokus 2013 Copyright Copyright 2013, 2013, Oracle Oracle and/or and/or its affiliates. its affiliates. All rights All rights reserved. reserved. Insert Information Protection Policy Classification from Slide 13
2 2
3 Java 8 2
4 Lambda (JSR 335) Java 8 2
5 Lambda (JSR 335) Compact Profiles Java 8 2
6 Lambda (JSR 335) Compact Profiles Java 8 Nashorn 2
7 Lambda (JSR 335) Compact Profiles Java 8 Date/Time API (JSR 310) Nashorn 2
8 Lambda (JSR 335) Compact Profiles Java 8 Date/Time API (JSR 310) Nashorn Type Annotations (JSR 308) 2
9 Bulk Data Operations Unicode 6.2 Lambda (JSR 335) Generalized Target-Type Inference Improve Contended Locking Unicode CLDR Compact Profiles TLS Server Name Indication NSA Suite B Base64 HTTP Client Lambda-Form Representation for Method Handles Remove the Permanent Generation Java 8 Date/Time API (JSR 310) DocTree API Prepare for Modularization Parallel Array Sorting Nashorn Configurable Secure-Random Number Generation Type Annotations (JSR 308) 2
10 3
11 3
12 4
13 4
14 Colors and Shapes 5
15 Colors and Shapes enum Color { RED, GREEN, BLUE } 5
16 Colors and Shapes enum Color { RED, GREEN, BLUE } class Shape { } Shape() {... } Shape(Shape s, double area) {... } Color getcolor() {... } void setcolor(color c) {... } double getarea() {... } 5
17 6
18 List<Shape> shapes =...; 6
19 List<Shape> shapes =...; // Sort shapes by color Comparator<Shape> c = new Comparator<Shape>() { public int compare(shape s, Shape t) { return s.getcolor().compareto(t.getcolor()); } }; Collections.sort(shapes, c); 6
20 // Sort shapes by color Comparator<Shape> c = new Comparator<Shape>() { public int compare(shape s, Shape t) { return s.getcolor().compareto(t.getcolor()); } }; Collections.sort(shapes, c); 7
21 Lambda expressions // Sort shapes by color Comparator<Shape> c = new Comparator<Shape>() { public int compare(shape s, Shape t) { return s.getcolor().compareto(t.getcolor()); } }; Collections.sort(shapes, c); // Sort shapes by color, with a lambda Comparator<Shape> c = (Shape s, Shape t) -> s.getcolor().compareto(t.getcolor()); Collections.sort(shapes, c); 7
22 Lambda expressions // Sort shapes by color, with a lambda Comparator<Shape> c = (Shape s, Shape t) -> s.getcolor().compareto(t.getcolor()); Collections.sort(shapes, c); 8
23 Lambda expressions // Sort shapes by color, with a lambda Comparator<Shape> c = (Shape s, Shape t) -> s.getcolor().compareto(t.getcolor()); Collections.sort(shapes, c); // Sort shapes by color, with a lambda using type inference Comparator<Shape> c = (s, t) -> s.getcolor().compareto(t.getcolor()); Collections.sort(shapes, c); 8
24 Lambda expressions // Sort shapes by color, with a lambda using type inference Comparator<Shape> c = (s, t) -> s.getcolor().compareto(t.getcolor()); Collections.sort(shapes, c); 9
25 Lambda expressions // Sort shapes by color, with a lambda using type inference Comparator<Shape> c = (s, t) -> s.getcolor().compareto(t.getcolor()); Collections.sort(shapes, c); // Sort shapes by color, in one statement Collections.sort(shapes, (s, t) -> s.getcolor().compareto(t.getcolor())); 9
26 Functional interfaces 10
27 Functional interfaces // Compare shapes by color Comparator<Shape> c = (s, t) -> s.getcolor().compareto(t.getcolor()); 10
28 Functional interfaces // Compare shapes by color Comparator<Shape> c = (s, t) -> s.getcolor().compareto(t.getcolor()); // Test whether a shape is red Predicate<Shape> p = s -> s.getcolor() == RED; 10
29 Functional interfaces // Compare shapes by color Comparator<Shape> c = (s, t) -> s.getcolor().compareto(t.getcolor()); // Test whether a shape is red Predicate<Shape> p = s -> s.getcolor() == RED; // Extract the area of a shape Function<Shape,Double> f = s -> s.getarea(); 10
30 Functional interfaces // Compare shapes by color Comparator<Shape> c = (s, t) -> s.getcolor().compareto(t.getcolor()); // Test whether a shape is red Predicate<Shape> p = s -> s.getcolor() == RED; // Extract the area of a shape Function<Shape,Double> f = s -> s.getarea(); // Create a bigger shape from a given shape UnaryOperator<Shape> o = s -> new Shape(s, s.getarea() * 2); 10
31 Iteration 11
32 Iteration // Paint red shapes blue List<Shape> shapes =...; for (Shape s : shapes) { if (s.getcolor() == RED) s.setcolor(blue); } 11
33 Iteration // Paint red shapes blue, using external iteration List<Shape> shapes =...; for (Shape s : shapes) { if (s.getcolor() == RED) s.setcolor(blue); } 11
34 Iteration // Paint red shapes blue, using external iteration List<Shape> shapes =...; for (Shape s : shapes) { if (s.getcolor() == RED) s.setcolor(blue); } // Paint red shapes blue, using internal iteration shapes.foreach(s -> { if (s.getcolor() == RED) s.setcolor(blue); }); 11
35 Default methods 12
36 Default methods interface Iterable<T> { } Iterator<T> iterator(); default void foreach(consumer<? super T> consumer) { for (T t : this) consumer.accept(t); } 12
37 Default methods 13
38 Default methods interface Collection<E> { default boolean removeall(predicate<? super E> filter) { boolean removed = false; Iterator<E> each = iterator(); while (each.hasnext()) { if (filter.test(each.next())) { each.remove(); removed = true; } } return removed; } } 13
39 Default methods 14
40 Default methods interface List<E> {... default void replaceall(unaryoperator<e> op) { final ListIterator<E> li = this.listiterator(); while (li.hasnext()) li.set(op.apply(li.next())); } } 14
41 // Paint red shapes blue, using internal iteration shapes.foreach(s -> { if (s.getcolor() == RED) s.setcolor(blue); }); 15
42 Streams // Paint red shapes blue, using internal iteration shapes.foreach(s -> { if (s.getcolor() == RED) s.setcolor(blue); }); // Paint red shapes blue, using bulk operations on a stream shapes.stream().filter(s -> s.getcolor() == RED).forEach(s -> { s.setcolor(blue); }); 15
43 Streams // Paint red shapes blue, using bulk operations on a stream shapes.stream().filter(s -> s.getcolor() == RED).forEach(s -> { s.setcolor(blue); }); 16
44 Streams // Paint red shapes blue, using bulk operations on a stream shapes.stream().filter(s -> s.getcolor() == RED).forEach(s -> { s.setcolor(blue); }); // Find the first blue shape Shape firstblue = shapes.stream().filter(s -> s.getcolor() == BLUE).findFirst().get(); 16
45 Streams 17
46 Streams // Compute the sum of the areas of blue shapes double sumofareas = shapes.stream().filter(s -> s.getcolor() == BLUE).map(s -> s.getarea()).reduce(0.0, (a, b) -> a + b); 17
47 Streams // Compute the sum of the areas of blue shapes double sumofareas = shapes.stream().filter(s -> s.getcolor() == BLUE).map(s -> s.getarea()).reduce(0.0, (a, b) -> a + b); // Compute the sum of the areas of blue shapes double sumofareas = shapes.stream().filter(s -> s.getcolor() == BLUE).map(s -> s.getarea()).sum(); 17
48 Streams // Compute the sum of the areas of blue shapes double sumofareas = shapes.stream().filter(s -> s.getcolor() == BLUE).map(s -> s.getarea()).sum(); 18
49 Streams // Compute the sum of the areas of blue shapes double sumofareas = shapes.stream().filter(s -> s.getcolor() == BLUE).map(s -> s.getarea()).sum(); // Compute the sum of the areas of blue shapes double sumofareas = shapes.stream().filter(s -> s.getcolor() == BLUE).map(Shape::getArea).sum(); 18
50 Streams // Compute the sum of the areas of blue shapes double sumofareas = shapes.stream().filter(s -> s.getcolor() == BLUE).map(Shape::getArea).sum(); 19
51 Streams // Compute the sum of the areas of blue shapes double sumofareas = shapes.stream().filter(s -> s.getcolor() == BLUE).map(Shape::getArea).sum(); // Compute the sum of the areas of blue shapes, in parallel double sumofareas = shapes.parallelstream().filter(s -> s.getcolor() == BLUE).map(Shape::getArea).sum(); 19
52 Project Lambda openjdk.java.net/projects/lambda jdk8.java.net/lambda 20
53 Project Lambda openjdk.java.net/projects/lambda jdk8.java.net/lambda 20
54 Project Lambda openjdk.java.net/projects/lambda jdk8.java.net/lambda 20
55 Bulk Data Operations Unicode 6.2 Lambda (JSR 335) Generalized Target-Type Inference Improve Contended Locking Unicode CLDR Compact Profiles TLS Server Name Indication NSA Suite B Base64 HTTP Client Lambda-Form Representation for Method Handles Remove the Permanent Generation Java 8 Date/Time API (JSR 310) DocTree API Prepare for Modularization Parallel Array Sorting Nashorn Configurable Secure-Random Number Generation Type Annotations (JSR 308) 21
56 Project Jigsaw openjdk.java.net/projects/jigsaw 22
57 Project Jigsaw openjdk.java.net/projects/jigsaw 22
58 Modular platform: Before 23
59 Modular platform: Before 50 nodes 171 edges 23
60 Modular platform: Before 50 nodes 171 edges 24
61 Modular platform: After 32 nodes 105 edges 24
62 cosnaming tools tools.jaxws tools.base crypto scripting sctp instrument management.iiop compat corba tools.jre devtools kerberos management compiler jaxws rowset rmi jta naming auth jaxp jdbc tls logging xmldsig desktop httpserver prefs jx.annotations base
63 cosnaming tools tools.jaxws tools.base crypto scripting sctp instrument management.iiop compat corba tools.jre devtools kerberos management compiler jaxws rowset rmi jta naming auth jaxp jdbc tls logging xmldsig desktop httpserver prefs jx.annotations base 52MB
64 cosnaming tools tools.jaxws tools.base crypto scripting sctp instrument 52MB management.iiop compat corba tools.jre devtools kerberos management compiler jaxws rowset rmi jta naming auth jaxp jdbc tls logging xmldsig desktop httpserver prefs jx.annotations base 10
65 cosnaming tools tools.jaxws tools.base management.iiop compat kerberos crypto rowset rmi jta management compiler corba devtools tools.jre jaxws xmldsig desktop scripting naming auth jaxp jdbc httpserver tls logging sctp prefs jx.annotations instrument base 52MB 17 10
66 cosnaming tools tools.jaxws tools.base sctp instrument crypto scripting compat rowset naming jdbc 52MB management.iiop kerberos tls rmi management compiler auth base 10 jta logging corba jaxp tools.jre xmldsig prefs jaxws desktop devtools httpserver jx.annotations
67 cosnaming tools tools.jaxws tools.base crypto scripting sctp instrument management.iiop compat corba tools.jre devtools kerberos management compiler jaxws rowset rmi jta naming auth jaxp jdbc tls logging xmldsig desktop httpserver prefs jx.annotations base
68 Compact Profiles 26
69 Compact Profiles compact1 java.io java.lang java.math java.net java.nio java.security java.text java.util javax.crypto javax.net javax.security 10MB 26
70 Compact Profiles compact1 java.io java.lang java.math java.net java.nio java.security java.text java.util javax.crypto javax.net javax.security compact2 java.rmi java.sql javax.rmi javax.sql javax.transaction javax.xml org.w3c.dom org.xml.sax 10MB 17 26
71 Compact Profiles compact1 java.io java.lang java.math java.net java.nio java.security java.text java.util javax.crypto javax.net javax.security compact2 java.rmi java.sql javax.rmi javax.sql javax.transaction javax.xml org.w3c.dom org.xml.sax compact3 java.lang.instrument java.lang.management java.util.prefs javax.annotation.processing javax.lang.model javax.management javax.naming javax.script javax.security.acl javax.security.auth.kerberos javax.security.sasl javax.sql.rowset javax.tools javax.xml.crypto org.ietf.jgss 10MB
72 Compact Profiles compact1 java.io java.lang java.math java.net java.nio java.security java.text java.util javax.crypto javax.net javax.security compact2 java.rmi java.sql javax.rmi javax.sql javax.transaction javax.xml org.w3c.dom org.xml.sax compact3 java.lang.instrument java.lang.management java.util.prefs javax.annotation.processing javax.lang.model javax.management javax.naming javax.script javax.security.acl javax.security.auth.kerberos javax.security.sasl javax.sql.rowset javax.tools javax.xml.crypto org.ietf.jgss Full JRE java.applet java.awt java.beans javax.accessibility javax.activation javax.activity javax.annotation javax.imageio javax.jws javax.print javax.rmi javax.rmi.corba javax.sound javax.swing javax.xml.bind javax.xml.soap javax.xml.ws org.omg 10MB
73 Bulk Data Operations Unicode 6.2 Lambda (JSR 335) Generalized Target-Type Inference Improve Contended Locking Unicode CLDR Compact Profiles TLS Server Name Indication NSA Suite B Base64 HTTP Client Lambda-Form Representation for Method Handles Remove the Permanent Generation Java 8 Date/Time API (JSR 310) DocTree API Prepare for Modularization Parallel Array Sorting Nashorn Configurable Secure-Random Number Generation Type Annotations (JSR 308) 27
74 Java 8 28
75 Java 8 28
76 Java 8 openjdk.java.net/projects/jdk8 openjdk.java.net/projects/jdk8/spec jdk8.java.net 28
77 29
78 29
79 29
80 30
81 Java 9 and beyond! 30
82 Unified Type System OpenJFX Self Tuning JVM Java 9 and beyond! Jigsaw Reification Ease of use 30
83 Project Sumatra Java for GPUs OpenJFX Resource Management Generic Lang Interoperability Jigsaw More and More Ports Optimizations Penrose Reification Unified Type System Improved Native Integration Self Tuning JVM Java 9 and beyond! Data Structure Optimizations Ease of use Multi-Tenancy 30
84 JDK Enhancement Proposals (JEPs) openjdk.java.net/jeps 31
85 JDK Enhancement Proposals (JEPs) openjdk.java.net/jeps 31
86 JDK Enhancement Proposals (JEPs) 138 Autoconf-Based Build System 139 Enhance javac to Improve Build Speed 140 Limited doprivileged 141 Increase the Client VM's Default Heap Size 142 Reduce Cache Contention on Specified Fields 143 Improve Contended Locking 144 Reduce GC Latency for Large Heaps 145 Cache Compiled Code 146 Improve Fatal Error Logs 147 Reduce Class Metadata Footprint 148 Small VM 149 Reduce Core-Library Memory Usage 150 Date & Time API 151 Compress Time-Zone Data 152 Crypto Operations with Network HSMs 153 Launch JavaFX Applications 154 Remove Serialization 155 Concurrency Updates 156 G1 GC: Reduce need for full GCs 157 G1 GC: NUMA-Aware Allocation 158 Unified JVM Logging 159 Enhanced Class Redefinition 160 Lambda-Form Representation for Method Handles 161 Compact Profiles 162 Prepare for Modularization 163 Enable NUMA Mode by Default When Appropriate 164 Leverage CPU Instructions for AES Cryptography 165 Compiler Control 166 Overhaul JKS-JCEKS-PKCS12 Keystores 167 Event-Based JVM Tracing 168 Network Discovery of Manageable Java Processes 169 Value Objects 170 JDBC Fence Intrinsics 172 DocLint 173 Retire Some Rarely-Used GC Combinations 174 Nashorn JavaScript Engine 175 Integrate PowerPC/AIX Port into JDK 8 32
87 33
88 The preceding material is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle s products remains at the sole discretion of Oracle. 33
89 34
90 34 openjdk.java.net/projects/jdk8 jdk8.java.net
91 Java 8, Java 9, and Beyond! Mark Reinhold Insert Presenterʼs Name Here Insert Presenterʼs Title Here Chief Architect, Java Platform Group, Oracle Jfokus 2013 Insert Information Protection Policy Classification from Slide 13
What s new in Java SE Embedded?
What s new in Java SE Embedded? David Holmes Consulting Member of Technical Staff Java SE Embedded Group, Oracle September 29, 2014 Safe Harbor Statement The following is intended to outline our general
More informationThe Modular Java Platform & Project Jigsaw
The Modular Java Platform & Project Jigsaw Insert Presenter s Name Here Insert Mark Presenter s Reinhold Title (@mreinhold) Here Chief Architect, Java Platform Group Oracle 2014/2/4 Insert Information
More informationCopyright 2014, Oracle and/or its affiliates. All rights reserved.
1 Java and the Internet of Things Jibing Chen (jibing.chen@oracle.com) Java Platform Group, Oracle The following is intended to outline our general product direction. It is intended for information purposes
More information: Past Present and Future History and direction of the Java language and platform
Chris Bailey IBM Java Serviceability and Cloud Integration Architect 11 th April 2013 : Past Present and Future History and direction of the Java language and platform 1 2011 IBM Corporation Important
More informationJava Leaders Summit Java SE
Java Leaders Summit Java SE Staffan Friberg Product Manager Java Platform Group 1 Copyright 2011-2013 Oracle and/or its affiliates. The following is intended to outline our general product direction. It
More informationCopyright 2012, Oracle and/or its affiliates. All rights reserved. Monday, June 3, 13
1 55 New Things in JDK 8 Dalibor Topic (@robilad) Principal Product Manager June 3rd, 2013 - JavaCro 2 The following is intended to outline our general product direction. It is intended for information
More informationJava SE 8 Overview. Simon Ritter Head of Java Technology Evangelism.
Java SE 8 Overview Simon Ritter Head of Java Technology Evangelism Twitter: @speakjava Java SE 8 (JSR 337) Component JSRs New functionality JSR 308: Annotations on types JSR 310: Date and Time API JSR
More informationMaking The Future Java
Making The Future Java Dalibor Topić (@robilad) Principal Product Manager October 18th, 2013 - HrOUG, Rovinj 1 The following is intended to outline our general product direction. It is intended for information
More information20 years of Java. Vladimir Ivanov HotSpot JVM Compile r Oracle Corp. OpenJDK: vlivanov
20 years of Java Vladimir Ivanov HotSpot JVM Compile r Oracle Corp. 1 Twitter: @iwan0www OpenJDK: vlivanov 28.11.2015 20 years of Java (The Platform) Vladimir Ivanov HotSpot JVM Compile r Oracle Corp.
More informationCSE1720 Delegation Concepts (Ch 2)
CSE1720 Delegation Concepts (Ch 2) Output (sec 2.2.5) Output to the console Output to a file (later section 5.3.2) Instead of System.out.println( Hi ); Use: output.println( Hi ); 1 2 Ready-Made I/O Components
More informationTitle Slide with Java FY15 Theme
Title Slide with Java FY15 Theme Das Oracle JDK 8 breitet sich aus Subtitle Presenter s Name Presenter s Title Organization, Division or Business Unit Month 00, 2014 Wolfgang Weigend Peter Doschkinow Note:
More information55 New Features in Java SE 8. Jibing Chen Senior Engineering Manager, Java Platform Group, Oracle
55 New Features in Java SE 8 Jibing Chen Senior Engineering Manager, Java Platform Group, Oracle Java SE 8 (JSR 337) Component JSRs New functionality JSR 308: Annotations on types JSR 310: Date and Time
More informationRetro Gaming With Lambdas. Stephen Chin Java Technology Ambassador JavaOne Content Chair
Retro Gaming With Lambdas Stephen Chin (@steveonjava) Java Technology Ambassador JavaOne Content Chair JDK 8 Feature Overview Innovation Lambda aka Closures Language Interop Nashorn Core Libraries Parallel
More informationJava SE 8 New Features
Java SE 8 New Features Duration 2 Days What you will learn This Java SE 8 New Features training delves into the major changes and enhancements in Oracle Java SE 8. You'll focus on developing an understanding
More informationWednesday, November 16, 11
Java SE 8, and Beyond! Danny Coward Principal Engineer 8 9 2012 2020? Priorities for the Java Platforms Grow Developer Base Grow Adoption Increase Competitiveness Adapt to change
More informationModules and Services. Alex Buckley Java Platform Group, Oracle October Copyright 2017, Oracle and/or its affiliates. All rights reserved.
Modules and Services Alex Buckley Java Platform Group, Oracle October 2017 Copyright 2017, Oracle and/or its affiliates. All rights reserved. I. Introduction to Services II. Using Services for Optional
More information<Insert Picture Here> JSR-335 Update for JCP EC Meeting, January 2012
JSR-335 Update for JCP EC Meeting, January 2012 Alex Buckley Oracle Corporation The following is intended to outline our general product direction. It is intended for information
More informationJava SE 9 and the Application Server
EclipseCon Europe 2017 Java SE 9 and the Application Server InterConnect 2017 Kevin Sutter MicroProfile and Java EE Architect @kwsutter 1 Java SE 9 Standalone 2 10/30/17 Java 9 Standard Features JSR 379:
More informationVYSOKÉ UČENÍ TECHNICKÉ V BRNĚ
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INTELIGENTNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS PORT OF OPTAPLANNER
More information<Insert Picture Here> To Java SE 8, and Beyond!
To Java SE 8, and Beyond! Simon Ritter Technology Evangelist The following is intended to outline our general product direction. It is intended for information purposes only, and
More informationJava in a World of Containers
Java in a World of Containers mikael.vidstedt@oracle.com Director, JVM @MikaelVidstedt Copyright 2018, Oracle and/or its affiliates. All rights reserved. 1 Safe Harbor Statement The following is intended
More informationCHAPTER 1: A GENERAL INTRODUCTION TO PROGRAMMING 1
INTRODUCTION xxii CHAPTER 1: A GENERAL INTRODUCTION TO PROGRAMMING 1 The Programming Process 2 Object-Oriented Programming: A Sneak Preview 5 Programming Errors 6 Syntax/Compilation Errors 6 Runtime Errors
More informationJava Programming Course Overview. Duration: 35 hours. Price: $900
978.256.9077 admissions@brightstarinstitute.com Java Programming Duration: 35 hours Price: $900 Prerequisites: Basic programming skills in a structured language. Knowledge and experience with Object- Oriented
More informationClass Libraries. Readings and References. Java fundamentals. Java class libraries and data structures. Reading. Other References
Reading Readings and References Class Libraries CSE 142, Summer 2002 Computer Programming 1 Other References» The Java tutorial» http://java.sun.com/docs/books/tutorial/ http://www.cs.washington.edu/education/courses/142/02su/
More informationJDK 9, 变化与未来. Xuelei Fan
2016-4-21 JDK 9, 变化与未来 Xuelei Fan Java 20-Year Topics JDK 9 OpenJDK Community JDK 9 Schedule 2016/05/26 Feature Complete 2016/08/11 All Tests Run 2016/09/01 Rampdown Start 2016/10/20 Zero Bug Bounce 2016/12/01
More informationCOMPUTER APPLICATIONS
STATISTICS AT A GLANCE COMPUTER APPLICATIONS Total Number of students who took the examination 89,447 Highest Marks Obtained 100 Lowest Marks Obtained 18 Mean Marks Obtained 83.82 Percentage of Candidates
More informationIntroduction to Computer Science I
Introduction to Computer Science I String and Random Java Classes Janyl Jumadinova 12-13 February, 2018 Divide and Conquer Most programs are complex and involved. The best way to develop and maintain a
More informationJDK 9/10/11 and Garbage Collection
JDK 9/10/11 and Garbage Collection Thomas Schatzl Senior Member of Technical Staf Oracle JVM Team May, 2018 thomas.schatzl@oracle.com Copyright 2017, Oracle and/or its afliates. All rights reserved. 1
More informationJava: advanced object-oriented features
Chair of Software Engineering Carlo A. Furia, Marco Piccioni, Bertrand Meyer Java: advanced object-oriented features Chair of Software Engineering Carlo A. Furia, Marco Piccioni, Bertrand Meyer Packages
More informationIBM SDK, Java Technology Edition Version 8. User Guide IBM
IBM SDK, Java Technology Edition Version 8 User Guide IBM IBM SDK, Java Technology Edition Version 8 User Guide IBM Note Before you use this information and the product it supports, read the information
More informationShaping the future of Java, Faster
Shaping the future of Java, Faster Georges Saab Vice President, Java Platform Group Oracle, Corp Twitter: @gsaab Safe Harbor Statement The following is intended to outline our general product direction.
More informationSystem.out.print(); Scanner.nextLine(); String.compareTo();
System.out.print(); Scanner.nextLine(); String.compareTo(); Starting Out with Java: From Control Structures Through Objects Sixth Edition Chapter 6 A First Look at Classes Chapter Topics 6.1 Objects and
More informationCS5015 Object-oriented Software Development. Lecture: Overview of Java Platform. A. O Riordan, 2010 Most recent revision, 2014 updated for Java 8
CS5015 Object-oriented Software Development Lecture: Overview of Java Platform A. O Riordan, 2010 Most recent revision, 2014 updated for Java 8 Java Programming Language Java is an object-oriented programming
More informationA Quick Tour p. 1 Getting Started p. 1 Variables p. 3 Comments in Code p. 6 Named Constants p. 6 Unicode Characters p. 8 Flow of Control p.
A Quick Tour p. 1 Getting Started p. 1 Variables p. 3 Comments in Code p. 6 Named Constants p. 6 Unicode Characters p. 8 Flow of Control p. 9 Classes and Objects p. 11 Creating Objects p. 12 Static or
More informationJava in a World of Containers
Java in a World of Containers mikael.vidstedt@oracle.com Not-coder, JVM @MikaelVidstedt matthew.gilliard@oracle.com Coder, not-jvm @MaximumGilliard Copyright 2017, Oracle and/or its affiliates. All rights
More informationModularity in Java 9. Balázs Lájer Software Architect, GE HealthCare. HOUG Oracle Java conference, 04. Apr
Modularity in Java 9 Balázs Lájer Software Architect, GE HealthCare HOUG Oracle Java conference, 04. Apr. 2016. Modularity in Java before Java 9 Source: https://www.osgi.org/developer/architecture/ 2 MANIFEST.MF
More informationNew Features Overview
Features pf JDK 7 New Features Overview Full List: http://docs.oracle.com/javase/7/docs/webnotes/adoptionguide/index.html JSR 334: Small language enhancements (Project Coin) Concurrency and collections
More informationMark Falco Oracle Coherence Development
Achieving the performance benefits of Infiniband in Java Mark Falco Oracle Coherence Development 1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy
More informationSafely Shoot Yourself in the Foot with Java 9
1 Safely Shoot Yourself in the Foot with Java 9 Dr Heinz M. Kabutz Last Updated 2017-11-04 2 Project Jigsaw: Primary Goals (Reinhold)! Make the Java SE Platform, and the JDK, more easily scalable down
More informationThe Z Garbage Collector Low Latency GC for OpenJDK
The Z Garbage Collector Low Latency GC for OpenJDK Per Lidén & Stefan Karlsson HotSpot Garbage Collection Team Jfokus VM Tech Summit 2018 Safe Harbor Statement The following is intended to outline our
More informationLab5. Wooseok Kim
Lab5 Wooseok Kim wkim3@albany.edu www.cs.albany.edu/~wooseok/201 Question Answer Points 1 A or B 8 2 A 8 3 D 8 4 20 5 for class 10 for main 5 points for output 5 D or E 8 6 B 8 7 1 15 8 D 8 9 C 8 10 B
More informationSafely Shoot Yourself in the Foot with Java 9 Dr Heinz M. Kabutz
Safely Shoot Yourself in the Foot with Java 9 Dr Heinz M. Kabutz Last Updated 2017-11-08 Project Jigsaw: Primary Goals (Reinhold) Make the Java SE Platform, and the JDK, more easily scalable down to small
More informationJava Performance: The Definitive Guide
Java Performance: The Definitive Guide Scott Oaks Beijing Cambridge Farnham Kbln Sebastopol Tokyo O'REILLY Table of Contents Preface ix 1. Introduction 1 A Brief Outline 2 Platforms and Conventions 2 JVM
More information<Insert Picture Here> JDK 7 DOAG Konferenz 2010, November 16th, 2010
JDK 7 DOAG Konferenz 2010, November 16th, 2010 Dalibor.Topic@oracle.com Java F/OSS Ambassador 3 3 JavaOne 2010: Oracle Announces JDK Roadmap for Advancing Java SE http://www.oracle.com/us/corporate/press/173782
More information1Z Java SE 5 and 6, Certified Associate Exam Summary Syllabus Questions
1Z0-850 Java SE 5 and 6, Certified Associate Exam Summary Syllabus Questions Table of Contents Introduction to 1Z0-850 Exam on Java SE 5 and 6, Certified Associate... 2 Oracle 1Z0-850 Certification Details:...
More informationIntroduction... xv SECTION 1: DEVELOPING DESKTOP APPLICATIONS USING JAVA Chapter 1: Getting Started with Java... 1
Introduction... xv SECTION 1: DEVELOPING DESKTOP APPLICATIONS USING JAVA Chapter 1: Getting Started with Java... 1 Introducing Object Oriented Programming... 2 Explaining OOP concepts... 2 Objects...3
More informationEvolving Java. Brian Goetz Java Language Architect, Oracle. Copyright 2013, Oracle and/or its affiliates. All rights reserved.
Evolving Java Brian Goetz Java Language Architect, Oracle 1 The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated
More informationAhead of Time (AOT) Compilation
Ahead of Time (AOT) Compilation Vaibhav Choudhary (@vaibhav_c) Java Platforms Team https://blogs.oracle.com/vaibhav Copyright 2018, Oracle and/or its affiliates. All rights reserved. Safe Harbor Statement
More informationJava ME Directions. JCP F2F - Austin. Florian Tournier - Oracle May 9, Copyright 2017, Oracle and/or its affiliates. All rights reserved.
Java ME Directions JCP F2F - Austin Florian Tournier - Oracle May 9, 2017 Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes
More information<Insert Picture Here> Java Virtual Developer Day
1 Java Virtual Developer Day Simon Ritter Technology Evangelist Virtual Developer Day: Agenda Keynote: The Java Platform: Now and the Future What is Java SE 7 and JDK 7 Diving into
More information<Insert Picture Here> Get on the Grid. JVM Language Summit Getting Started Guide. Cameron Purdy, VP of Development, Oracle
Get on the Grid JVM Language Summit Getting Started Guide Cameron Purdy, VP of Development, Oracle The following is intended to outline our general product direction. It is intended
More informationJava Collection Framework
Java Collection Framework Readings Purpose To provide a working knowledge of the Java Collections framework and iterators. Learning Objectives Understand the structure of the Java Collections framework
More informationScaling the OpenJDK. Claes Redestad Java SE Performance Team Oracle. Copyright 2017, Oracle and/or its afliates. All rights reserved.
Scaling the OpenJDK Claes Redestad Java SE Performance Team Oracle Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only,
More informationCore JAVA Training Syllabus FEE: RS. 8000/-
About JAVA Java is a high-level programming language, developed by James Gosling at Sun Microsystems as a core component of the Java platform. Java follows the "write once, run anywhere" concept, as it
More informationThe Z Garbage Collector Scalable Low-Latency GC in JDK 11
The Z Garbage Collector Scalable Low-Latency GC in JDK 11 Per Lidén (@perliden) Consulting Member of Technical Staff Java Platform Group, Oracle October 24, 2018 Safe Harbor Statement The following is
More informationQuick start. Robert Bachmann & Dominik Dorn. JSUG Meeting #63
1.. Java 8 Quick start Robert Bachmann & Dominik Dorn JSUG Meeting #63 Outline: What s new in Java 8 2 Interface additions and lambda syntax (r) Library additions (r) Nashorn (d) Type annotations (d) VM
More informationJava Embedded 2013 Update
Java Embedded 2013 Update Dr. Rainer Eschrich M2M Lead Europe Java Global Sales Unit 1 The following is intended to outline our general product direction. It is intended for information purposes only,
More informationJava: framework overview and in-the-small features
Chair of Software Engineering Carlo A. Furia, Marco Piccioni, Bertrand Meyer Java: framework overview and in-the-small features Chair of Software Engineering Carlo A. Furia, Marco Piccioni, Bertrand Meyer
More informationThe G1 GC in JDK 9. Erik Duveblad Senior Member of Technical Staf Oracle JVM GC Team October, 2017
The G1 GC in JDK 9 Erik Duveblad Senior Member of Technical Staf racle JVM GC Team ctober, 2017 Copyright 2017, racle and/or its affiliates. All rights reserved. 3 Safe Harbor Statement The following is
More informationCopyright 2014 Oracle and/or its affiliates. All rights reserved.
Copyright 2014 Oracle and/or its affiliates. All rights reserved. On the Quest Towards Fastest (Java) Virtual Machine on the Planet! @JaroslavTulach Oracle Labs Copyright 2015 Oracle and/or its affiliates.
More information2011 Oracle Corporation and Affiliates. Do not re-distribute!
How to Write Low Latency Java Applications Charlie Hunt Java HotSpot VM Performance Lead Engineer Who is this guy? Charlie Hunt Lead JVM Performance Engineer at Oracle 12+ years of
More informationWirtschaftsinformatik Skiseminar ao. Prof. Dr. Rony G. Flatscher. Seminar paper presentation Dennis Robert Stöhr
Android Programming Wirtschaftsinformatik Skiseminar ao. Prof. Dr. Rony G. Flatscher Seminar paper presentation Dennis Robert Stöhr 0453244 11.01.2011 Agenda Introduction Basics of Android Development
More informationWelcome to the session...
Welcome to the session... Copyright 2013, Oracle and/or its affiliates. All rights reserved. 02/22/2013 1 The following is intended to outline our general product direction. It is intended for information
More informationJava SE 8: Lambda Expressions And The Stream API
Java SE 8: Lambda Expressions And The Stream API Simon Ritter Head of Java Technology Evangelism Java Product Management Java Day Tokyo 2015 April 8, 2015 Safe Harbor Statement The following is intended
More informationOverview. Software Code is Everywhere. Software Crisis. Software crisis Development approaches Reusability Java packages API Sample classes:
Overview Software crisis Development approaches Reusability Java packages API Sample classes: String, Random, StringBuffer, StringTokenizer 8 November 2007 Ariel Shamir 1 Software Code is Everywhere Televisions:
More informationJavaEE.Next(): Java EE 7, 8, and Beyond
JavaEE.Next(): Java EE 7, 8, and Beyond Reza Rahman Java EE/GlassFish Evangelist Reza.Rahman@Oracle.com @reza_rahman 1 The preceding is intended to outline our general product direction. It is intended
More informationThe Z Garbage Collector An Introduction
The Z Garbage Collector An Introduction Per Lidén & Stefan Karlsson HotSpot Garbage Collection Team FOSDEM 2018 Safe Harbor Statement The following is intended to outline our general product direction.
More informationJava Language Modularity With Superpackages
Java Language Modularity With Superpackages Alex Buckley JSR 294 Co-spec lead Sun Microsystems Andreas Sterbenz JSR 294 Co-spec lead Sun Microsystems TS-2401 2007 JavaOne SM Conference Session 2401 Goal
More informationAlan Bateman Java Platform Group, Oracle November Copyright 2018, Oracle and/or its affiliates. All rights reserved.!1
Alan Bateman Java Platform Group, Oracle November 2018 Copyright 2018, Oracle and/or its affiliates. All rights reserved.!1 Project Loom Continuations Fibers Tail-calls Copyright 2018, Oracle and/or its
More informationProject Loom Ron Pressler, Alan Bateman June 2018
Project Loom Ron Pressler, Alan Bateman June 2018 Copyright 2018, Oracle and/or its affiliates. All rights reserved.!1 Safe Harbor Statement The following is intended to outline our general product direction.
More informationJava.Next: Java 8 Overview. Scott Seighman Oracle
Java.Next: Java 8 Overview Scott Seighman Oracle scott.seighman@oracle.com 1 Disclaimer The following is intended to outline our general product direction. It is intended for information purposes only,
More informationAdvanced Modular Development CON6821
Advanced Modular Development CON6821 Mark Reinhold, Alex Buckley, Alan Bateman Java Platform Group, Oracle October 2015 Copyright 2015, Oracle and/or its affiliates. All rights reserved. Sessions 1 2 3
More informationCode Listing H-1. (Car.java) H-2 Appendix H Packages
APPENDIX H Packages NOTE: To use this appendix you must understand how your operating system uses directories, or folders. In addition, you must know how to set the value of an environment variable. The
More informationOracle WebCenter Portal Performance Tuning
ORACLE PRODUCT LOGO Oracle WebCenter Portal Performance Tuning Rich Nessel - Principal Product Manager Christina Kolotouros - Product Management Director 1 Copyright 2011, Oracle and/or its affiliates.
More information55 New Features In JDK 9
55 New Features In JDK 9 Copyright Azul Systems 2015 Simon Ritter Deputy CTO, Azul Systems azul.com @speakjava 1 Major Features Java Platform Module System JSR 376 Public Review Reconsideration Ballot
More information<Insert Picture Here> JavaFX 2.0
1 JavaFX 2.0 Dr. Stefan Schneider Chief Technologist ISV Engineering The following is intended to outline our general product direction. It is intended for information purposes only,
More informationCopyright 2013, Oracle and/or its affiliates. All rights reserved.
1 JavaFX for Desktop and Embedded Nicolas Lorain Java Client Product Management Nicolas.lorain@oracle.com @javafx4you 2 The preceding is intended to outline our general product direction. It is intended
More informationIndex. Decomposability, 13 Deep reflection, 136 Dependency hell, 19 --describe-module, 39
Index A --add-exports option, 28, 134 136, 142, 192 Apache Maven compatibility, 214 Compiler plugin, 212, 214 goals, 209 JDeps plugin goals, 210 options, 211 JEP 223 New Version-String scheme, 209 Automatic
More informationModularity in Java. With OSGi. Alex Docklands.LJC January Copyright 2016 Alex Blewitt
Modularity in Java With OSGi Alex Blewitt @alblue Docklands.LJC January 2016 Modularity in Java Modularity is Easy? Modularity is Hard! Modularity is Hard! Modularity is Hard! Modularity is Hard! Modularity
More informationCopyright 2012, Oracle and/or its affiliates. All rights reserved.
1 Jump-Starting Lambda Stuart Marks @stuartmarks Mike Duigou @mjduigou Oracle JDK Core Libraries Team 2 What is Lambda? Essentially an anonymous function allows one to treat code as data provides parameterization
More informationNews in JDK8 Developer Conference Brno Feb Jiří Vaněk
News in JDK8 Developer Conference Brno Feb. 2012 Jiří Vaněk News in JDK8 Developer Conference Brno Feb. 2012 Jiří Vaněk FOSDEM 2012: M. Reinhold: There is nothing sure right now Q: JDK 7? Q: JDK < 6? Index
More informationEclipse and Java 8. Daniel Megert Platform and JDT Lead Eclipse PMC Member IBM Rational Zurich Research Lab
Eclipse and Java 8 Daniel Megert Platform and JDT Lead Eclipse PMC Member IBM Rational Zurich Research Lab Eclipse and Java 8 New Java language features Eclipse features for Java 8 (demo) Behind the scenes
More informationJava 9 Module System. Complex Software and Programming Language History of Modules Module Concepts and Tools Modularization of the JDK
Java 9 Module System Complex Software and Programming Language History of Modules Module Concepts and Tools Modularization of the JDK Problem of Complexity and Programming Language 2 von 41 Early/Modern
More informationJAVA PERFORMANCE. PR SW2 S18 Dr. Prähofer DI Leopoldseder
JAVA PERFORMANCE PR SW2 S18 Dr. Prähofer DI Leopoldseder OUTLINE 1. What is performance? 1. Benchmarking 2. What is Java performance? 1. Interpreter vs JIT 3. Tools to measure performance 4. Memory Performance
More information1 Shyam sir JAVA Notes
1 Shyam sir JAVA Notes 1. What is the most important feature of Java? Java is a platform independent language. 2. What do you mean by platform independence? Platform independence means that we can write
More informationPutting Oracle Database 11g to Work for Java. Kuassi Mensah Group Product Manager, Java Platform Group db360.blogspot.com
Putting Oracle Database 11g to Work for Java Kuassi Mensah Group Product Manager, Java Platform Group db360.blogspot.com The following is intended to outline our general product direction. It is intended
More informationNew Features in Java language
Core Java Topics Total Hours( 23 hours) Prerequisite : A basic knowledge on java syntax and object oriented concepts would be good to have not mandatory. Jdk, jre, jvm basic undrestanding, Installing jdk,
More informationJAVA Modules Java, summer semester 2018
JAVA Modules Modules a module explicitely defines what is provided but also what is required why? the classpath concept is fragile no encapsulation 2 Modules a module explicitely defines what is provided
More informationIntroduction to Modular Development CON5118
Introduction to Modular Development CON5118 Alan Bateman Java Platform Group, Oracle October 2015 Sessions 1 2 3 4 5 Prepare for JDK 9 Introduction to Modular Development Advanced Modular Development Project
More informationCase3:10-cv WHA Document899 Filed04/12/12 Page1 of 2
Case:0-cv-0-WHA Document Filed0// Page of 0 0 MICHAEL A. JACOBS (Bar No. ) mjacobs@mofo.com MARC DAVID PETERS (Bar No. ) mdpeters@mofo.com DANIEL P. MUINO (Bar No. 0) dmuino@mofo.com Page Mill Road, Palo
More informationState of the Dolphin Developing new Apps in MySQL 8
State of the Dolphin Developing new Apps in MySQL 8 Highlights of MySQL 8.0 technology updates Mark Swarbrick MySQL Principle Presales Consultant Jill Anolik MySQL Global Business Unit Israel Copyright
More informationLab5. Wooseok Kim
Lab5 Wooseok Kim wkim3@albany.edu www.cs.albany.edu/~wooseok/201 Question Answer Points 1 A 8 2 A 8 3 E 8 4 D 8 5 20 5 for class 10 for main 5 points for output 6 A 8 7 B 8 8 0 15 9 D 8 10 B 8 Question
More informationOracle JD Edwards EnterpriseOne Object Usage Tracking Performance Characterization Using JD Edwards EnterpriseOne Object Usage Tracking
Oracle JD Edwards EnterpriseOne Object Usage Tracking Performance Characterization Using JD Edwards EnterpriseOne Object Usage Tracking ORACLE WHITE PAPER JULY 2017 Disclaimer The following is intended
More information<Insert Picture Here> Adventures in JSR-292 or How To Be A Duck Without Really Trying
Adventures in JSR-292 or How To Be A Duck Without Really Trying Jim Laskey Multi-language Lead Java Language and Tools Group The following is intended to outline our general product
More informationCopyright 2014, Oracle and/or its affiliates. All rights reserved.
1 Introduction to Lambda Stuart W. Marks Principal Member of Technical Staff Oracle JDK Core Libraries Team Twitter: @stuartmarks What is a Lambda? A lambda is a function. A function is a computation that
More informationProject Avatar: Server Side JavaScript on the JVM GeeCon - May David Software Evangelist - Oracle
Project Avatar: Server Side JavaScript on the JVM GeeCon - May 2014! David Delabassee @delabassee Software Evangelist - Oracle The following is intended to outline our general product direction. It is
More informationWednesday, May 30, 12
JDK 7 Updates in OpenJDK LinuxTag, May 23rd 2012 Dalibor Topić (@robilad) Principal Product Manager The following is intended to outline our general product direction. It is intended
More informationCourses For Event Java Advanced Summer Training 2018
Courses For Event Java Advanced Summer Training 2018 Java Fundamentals Oracle Java SE 8 Advanced Java Training Java Advanced Expert Edition Topics For Java Fundamentals Variables Data Types Operators Part
More informationTruffle A language implementation framework
Truffle A language implementation framework Boris Spasojević Senior Researcher VM Research Group, Oracle Labs Slides based on previous talks given by Christian Wimmer, Christian Humer and Matthias Grimmer.
More informationCall for Discussion: Project Skara Investigating source code management options for the JDK sources
Call for Discussion: Project Skara Investigating source code management options for the JDK sources Joseph D. Darcy (darcy, @jddarcy) and Erik Duveblad (ehelin) Java Platform Group, Oracle Committers Workshop
More information