search
HomeJavajavaTutorialWhat are the major features and enhancements introduced in Java 9?

Java 9引入了哪些主要功能和增强?

Oracle has released Java 9 version with a rich set of new features and many new Enhanced features.

Here are some of the important features and enhancements introduced in Java 9.

  • Factory method of collections: Factory method is a special type of static method that can be used to create unmodifiable Collection instances, which means we can use these methods to create Lists, Collections and Maps.
  • Java Platform Module System (JPMS): Java modules are a mechanism for bundling Java applications and Java packages into Java modules. It specifies which Java packages contain visible to other Java modules.
  • Private methods in the interfaces: The interface is allowed to include private and private static methods, thereby improving Code reusability inside the interface.
  • Java 9 REPL (Jshell) : Jshell is a REPL (read evaluation print loop) tool, Can be run from the command line. We can launch Jshell from the console and start entering and executing Java code directly.
  • Improvements in resource management: Java introduced a try-with-resources feature in Java 7 that can be automatically closed after use resource.
  • Diamond operator for anonymous inner classes: Java 9 introduced a new feature that allows us to use diamond## inside anonymous classes #operator.
  • Improvements in CompletableFuture API: The Java 9 version improves CompletableFuture API and solves some problems that occurred in Java 8. They add support for some delays and timeouts, some utility methods and better subclassing.
  • Responsive streaming: The reactive streaming API is a publish-subscribe framework that can be very easily implemented using Java language Asynchronous, Scalable and Parallel applications.
  • Improvements in process API: The process API is responsible for controlling and managing operating system processes, and has been significantly improved in this regard. ProcessHandle The class can provide the native process ID, startup time, accumulated CPU time, parameters, commands, users, parent processes and child processes of the process.
  • Improvements of the Optional class: In Java 9, the Optional class has three main improvements: Optional.ifPresentOrElse(), Optional.or() and Optional.stream().
  • Improvements to the Stream API: The Stream API has been improved and new methods have been added to the Stream interface. Added takeWhile (), dropWhile (), ofNullable () and iterate () methods to perform operations on stream elements.
  • Multi-resolution image API: The multi-resolution image API can encapsulate a set of images with different height and width , which can be customized according to our Query them on request.
  • HTTP/2 Client: HTTP/2 is a new version of HTTP protocol , focusing on data between the server and the client How it is framed and transmitted. In Java 9, the HTTP Client module is bundled as an incubator module and supports HTTP/2 with Backwards Compatibility.
  • Enhanced @Deprecated annotation : The @Deprecated annotation can provide more information about deprecated API. It can also provide a tool to analyze an application's static usage of deprecated APIs.

The above is the detailed content of What are the major features and enhancements introduced in Java 9?. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:tutorialspoint. If there is any infringement, please contact admin@php.cn delete
Is Java Platform Independent if then how?Is Java Platform Independent if then how?May 09, 2025 am 12:11 AM

Java is platform-independent because of its "write once, run everywhere" design philosophy, which relies on Java virtual machines (JVMs) and bytecode. 1) Java code is compiled into bytecode, interpreted by the JVM or compiled on the fly locally. 2) Pay attention to library dependencies, performance differences and environment configuration. 3) Using standard libraries, cross-platform testing and version management is the best practice to ensure platform independence.

The Truth About Java's Platform Independence: Is It Really That Simple?The Truth About Java's Platform Independence: Is It Really That Simple?May 09, 2025 am 12:10 AM

Java'splatformindependenceisnotsimple;itinvolvescomplexities.1)JVMcompatibilitymustbeensuredacrossplatforms.2)Nativelibrariesandsystemcallsneedcarefulhandling.3)Dependenciesandlibrariesrequirecross-platformcompatibility.4)Performanceoptimizationacros

Java Platform Independence: Advantages for web applicationsJava Platform Independence: Advantages for web applicationsMay 09, 2025 am 12:08 AM

Java'splatformindependencebenefitswebapplicationsbyallowingcodetorunonanysystemwithaJVM,simplifyingdeploymentandscaling.Itenables:1)easydeploymentacrossdifferentservers,2)seamlessscalingacrosscloudplatforms,and3)consistentdevelopmenttodeploymentproce

JVM Explained: A Comprehensive Guide to the Java Virtual MachineJVM Explained: A Comprehensive Guide to the Java Virtual MachineMay 09, 2025 am 12:04 AM

TheJVMistheruntimeenvironmentforexecutingJavabytecode,crucialforJava's"writeonce,runanywhere"capability.Itmanagesmemory,executesthreads,andensuressecurity,makingitessentialforJavadeveloperstounderstandforefficientandrobustapplicationdevelop

Key Features of Java: Why It Remains a Top Programming LanguageKey Features of Java: Why It Remains a Top Programming LanguageMay 09, 2025 am 12:04 AM

Javaremainsatopchoicefordevelopersduetoitsplatformindependence,object-orienteddesign,strongtyping,automaticmemorymanagement,andcomprehensivestandardlibrary.ThesefeaturesmakeJavaversatileandpowerful,suitableforawiderangeofapplications,despitesomechall

Java Platform Independence: What does it mean for developers?Java Platform Independence: What does it mean for developers?May 08, 2025 am 12:27 AM

Java'splatformindependencemeansdeveloperscanwritecodeonceandrunitonanydevicewithoutrecompiling.ThisisachievedthroughtheJavaVirtualMachine(JVM),whichtranslatesbytecodeintomachine-specificinstructions,allowinguniversalcompatibilityacrossplatforms.Howev

How to set up JVM for first usage?How to set up JVM for first usage?May 08, 2025 am 12:21 AM

To set up the JVM, you need to follow the following steps: 1) Download and install the JDK, 2) Set environment variables, 3) Verify the installation, 4) Set the IDE, 5) Test the runner program. Setting up a JVM is not just about making it work, it also involves optimizing memory allocation, garbage collection, performance tuning, and error handling to ensure optimal operation.

How can I check Java platform independence for my product?How can I check Java platform independence for my product?May 08, 2025 am 12:12 AM

ToensureJavaplatformindependence,followthesesteps:1)CompileandrunyourapplicationonmultipleplatformsusingdifferentOSandJVMversions.2)UtilizeCI/CDpipelineslikeJenkinsorGitHubActionsforautomatedcross-platformtesting.3)Usecross-platformtestingframeworkss

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

DVWA

DVWA

Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools