Prepare Interview

Mock Exams

Make Homepage

Bookmark this page

Subscribe Email Address

Difference between Java 11 and Java 12

Java 11 Java 12
Features Added:
- New String Methods: isBlank, lines, strip, stripLeading, stripTrailing, and repeat.

- New File Methods: We can use the new readString and writeString static methods from the Files class.

- Collection to an Array: The java.util.Collection interface contains a new default toArray method.

- The Not Predicate Method: A static not method has been added to the Predicate interface. We can use it to negate an existing predicate.

- Local-Variable Syntax for Lambda: Support for using the local variable syntax (var keyword) in lambda parameters.

- HTTP Client: The new HTTP API improves overall performance and provides support for both HTTP/1.1 and HTTP/2.

- Nest Based Access Control: A nest of classes in Java implies both the outer/main class and all its nested classes.

- Running Java Files: We don't need to compile the Java source files with javac explicitly anymore. Instead, we can directly run the file using the java command.

- Performance Enhancements: Dynamic Class-File Constants, Improved Aarch64 Intrinsics, A No-Op Garbage Collector, Flight Recorder.
Features Added:
- String Class New Methods: indent method adjusts the indentation of each line, transform method to revert the string.

- File::mismatch Method: New mismatch method in the nio.file.Files utility class. The method is used to compare two files and find the position of the first mismatched byte in their contents.

- Teeing Collector: A new teeing collector as an addition to the Collectors class. It is a composite of two downstream collectors. Every element is processed by both downstream collectors. Then their results are passed to the merge function and transformed into the final result.

- Compact Number Formatting: It's designed to represent a number in a shorter form, based on the patterns provided by a given locale.

- Switch Expressions (Preview): The syntax of switch statement got introduced. New switch statements are not only more compact and readable. They also remove the need for break statements. The code execution will not fall through after the first match.

- Pattern Matching for instanceof (Preview): Earlier if statements together with instanceof, we would have to explicitly typecast the object to access its features, but now we need not to typecast separately after instanceof.

- Shenandoah: A Low-Pause-Time Garbage Collector: It is now experimental garbage collector and not the default GC. It reduces the GC pause times by doing evacuation work simultaneously with the running Java threads.

- Microbenchmark Suite: Around 100 microbenchmark tests added in JDK which will perform continuous performance testing on a JVM.

- Default CDS Archives: The Class Data Sharing (CDS) feature helps reduce the startup time and memory footprint between multiple Java Virtual Machines.

Related differences

Java 10 vs Java 11Java 11 vs Java 12Java 12 vs Java 13
Is it helpful? Yes No

Get differences from below

Android vs iOSAngular vs ReactAngularJS vs NodeJS
AngularJS vs AngularAnsible vs TerraformAnsible vs Puppet
Apache vs IISAWS vs AzureAWS vs Google Cloud/GCP
AWT vs SwingC vs C++CSS 2 vs CSS 3
EJB 1.0 vs EJB 2.0EJB 2.0 vs EJB 3.0EJB 3.0 vs Spring
Golang vs JavaGraphQL vs RESTful Web Services (REST API)Hibernate 3 vs Hibernate 4
HTML vs XMLHTML vs XHTMLHTML vs DHTML
HTML 5 vs HTML 4HTTP vs HTTPSInstagram vs YouTube
J2EE vs J2MEJava vs C++Java vs J2EE
Java vs KotlinJava vs .NETJava 1.0 vs Java 1.1
Java 1.1 vs Java 1.2Java 1.2 vs Java 1.3Java 1.3 vs Java 1.4
Java 1.4 vs Java 5Java 10 vs Java 11Java 11 vs Java 12
Java 12 vs Java 13Java 13 vs Java 14Java 14 vs Java 15
Java 15 vs Java 16Java 16 vs Java 17Java 17 vs Java 18
Java 5 vs Java 6Java 6 vs Java 6 update 10Java 6 vs Java 7
Java 6 update 10 vs Java 6 update 12Java 7 vs Java 8Java 8 vs Java 9
Java 9 vs Java 10JavaBeans vs EJBJavaScript vs Jquery
JavaScript vs VBScriptJavaScript vs TypeScriptJboss vs Tomcat
Jboss vs WebLogicJDBC vs HibernateJDBC vs JPA
JDBC 3.0 vs JDBC 4.0JPA vs HibernateJquery vs AngularJS
jQuery Mobile vs BootstrapJSF vs JSPJSF 1.2 vs JSF 2.0
JSF 2.0 vs JSF 2.1JSON vs XMLJSP vs Servlets
JSP vs ASPLinux vs UnixMonolithic vs Microservices
MVC 1 vs MVC 2NodeJS vs JavaNodeJS vs Spring Boot
NodeJS vs GolangOn-Premise vs Cloud ComputingOpenID Connect vs OAuth 2.0
OracleJDK vs OpenJDKPaaS vs IaaSPHP vs JSP
Puppet vs TerraformPython vs JavaPython 2 vs Python 3
RDBMS vs HadoopRESTful Web Services vs SOAP Web ServicesRESTful Web Services (REST API) vs gRPC
SaaS vs PaaSSaaS vs IaaSSAML vs OpenID Connect
Spring vs Spring BootSpring 2.5 vs Spring 3.0Spring 3.0 vs Spring 4.0
Spring MVC vs Spring BootStruts vs JSFStruts vs Spring
Struts 1 vs Struts 2Struts 1.1 vs Struts 1.2Struts 1.2 vs Struts 1.3
Swing vs AppletTensorFlow vs PyTorchTikTok vs Instagram
WebLogic vs Websphere
©2024 WithoutBook