Java
Jump to navigation
Jump to search
External
- Java 11 https://docs.oracle.com/en/java/javase/11/docs/api/
- Java 10 https://docs.oracle.com/javase/10/docs/api/
- Java 8 https://docs.oracle.com/javase/8/docs/api/
- Java Language and Virtual Machine Specification https://docs.oracle.com/javase/specs/
- Java Release Notes https://www.oracle.com/java/technologies/javase/jdk-relnotes-index.html
Internal
Overview
Java is an object oriented language. However, "object oriented" is just one of the way the language can be used, one of the styles of coding Java supports. The language also has procedural capabilities and functional programming capabilities.
Subjects
Language
Chronology
Java 4
Java 5
- java.util.concurrent
- Java Generics
- Unicode supplementary characters handling enhancements
- Iterable
- Annotations and Annotation Processors
enum
Java 6
Java 7
- Java 7 Release Notes http://www.oracle.com/technetwork/java/javase/jdk7-relnotes-418459.html
- try-with-resources
- Fork/Join Framework
- The Diamond
<>
- Type Inference
- Java NIO 2
- Catching Multiple Exceptions and Exception Improved Type Checking
Java 8
- Java 8 Release Notes http://www.oracle.com/technetwork/java/javase/8-whats-new-2157071.html (March 2014)
- Lambda Expressions
- Streams API
- Optional
- Default Methods in Interfaces
- Java 8 Effectively Final Variables
- TODO https://www.infoq.com/presentations/effective-java-third-edition
- JSR 308 Annotations on Java Types
Java 9
- Java 9 Release Notes https://docs.oracle.com/javase/9/whatsnew/toc.htm (September 2017)
- Java Modules
- Java Reactive Streams
module
,requires
,transitive
,exports to
,uses
,provides
,with
,opens to
Java 10
Java 11
- JEP 321 HTTPClient
- Local Variable Syntax for Lambda Parameters
- Nests
- https://dzone.com/articles/90-new-features-and-apis-in-jdk-11
- Java 11 Single-File Source Code