Java 9 Interview Questions & Answers

5 avg. rating (100% score) - 1 votes

Java 9 Interview Questions & Answers

Are you looking for a Job change soon? Are you good in Java? Then this is for you. Java is the world’s most famous programming language. Java 9 is one of major feature release. It is the result of an industry-wide development effort that involves weekly builds, open review, and extensive collaboration. Do search in wisdom jobs for Java 9 job listings for full time and part time positions updated today. If you are looking for job then go check out interview questions page to get more information on the kind and level of questions you will come across during the interview. Wisdomjobs Java 9 interview questions and answers provides you with complete guide on the Java 9 and makes you prepared for winning job interview.

Java 9 Interview Questions

Java 9 Interview Questions
    1. Question 1. What Features Module System Has Provided?

      Answer :

      With the Modules component, following enhancements has been added in Java 9 :-

      1. A new optional phase,link time, is introduced. This phase is in-between compile time and run time. During this phase, a set of modules can be assembled and optimized, making a custom runtime image using jlink tool.
      2. javac, jlink, and java have additional options to specify module paths, which further locate definitions of modules.
      3. JAR format updated as modular JAR, which contains module-info.class file in its root directory.
      4. JMOD format introduced, a packaging format (similar to JAR) 

    2. Question 2. What Are The Significant Changes In Java 9?

      Answer :

      There are 90+ enhancements added to Java 8, the most significant ones are mentioned below :-

      1. Module :- A new kind of Java programing component introduced as module, which is a named, self-describing collection of code and data.
      2. REPL (JShell) :- Read-Eval-Print Loop (REPL) capability added to the Java platform.
      3. HTTP 2 Client:- new HTTPClient API supporting websockets and HTTP 2 streams and server push features.
      4. Improved JavaDocs:- Supports HTML5 output generation. Provides a search box to generated API documentation.
      5. Multirelease JAR:- Enhances the JAR format so that multiple, Java release-specific versions of class files can coexist in a single archive.

    3. Question 3. What Is Module In Java 9?

      Answer :

      In Java 9, a new kind of programming component called module has been introduced. A module is a self-describing collection of code and data and has a name to identify it.

    4. Question 4. What Is Jshell In Java 9?

      Answer :

      With JShell, java has REPL capability. Using JShell, we can code and test java based logic without compiling using javac and see the result of calculations directly.

    5. Question 5. How Will You Create Html5 Compliant Javadoc Using Java 9?

      Answer :

      Run the javadoc tool of jdk 9 with -html5 flag to generate new type of documentation.

    6. Question 6. Source Code Of A Module Lies In Which Folder?

      Answer :

      By convention, the source code of a module to lie in same directory which is the name of the module.

    7. Question 7. What Is Multi-release Jar Format Introduced In Java 9?

      Answer :

      In java 9, a new feature is introduced where a jar format has been enhanced to have different versions of java class or resources can be maintained and used as per the platform.

    8. Question 8. What Is The Full Form Of Repl?

      Answer :

      REPL:- Read-Eval-Print Loop.

    9. Question 9. Can You Create A Multi-release Jar For Different Version Of Java? Give An Example?

      Answer :

      Yes! Following command will create a multi-release jar for java 7 and java 9 version.

      $ jar -c -f test.jar -C java7 . --release 9 -C java9 .

    10. Question 10. What Are The Methods Added To Collections In Java 9?

      Answer :

      With java 9, following methods are added to List, Set and Map interfaces along with their overloaded counterparts.

      static <E> List<E> of(E e1, E e2, E e3);

      static <E> Set<E>  of(E e1, E e2, E e3);

      static <K,V> Map<K,V> of(K k1, V v1, K k2, V v2, K k3, V v3);

      static <K,V> Map<K,V> ofEntries(Map.Entry<? extends K,? extends V>... entries)

      note:

      1. For List and Set interfaces, of(...) method is overloaded to have 0 to 10 parameters and one with var args parameter.
      2. For Map interface, of(...) method is overloaded to have 0 to 10 parameters.
      3. In case of more than 10 paramters for Map interface, ofEntries(...) method can be used accepting var args parameter.

    11. Question 11. Collections Are Enhanced In Java 9. What Are The Changes And Explain?

      Answer :

      With Java 9, new factory methods are added to List, Set and Map interfaces to create immutable instances. These factory methods are convenience factory methods to create a collection in less verbose and in concise way.

    12. Question 12. How Can You Run A Multi Release Jar On Different Version Of Java? Give An Example?

      Answer :

      Syntax is same on both java versions, result will be different. Run with JDK 7.

      C:JAVA > java -cp test.jar com.tutorialspoint.Tester

      Inside Java 7

      Run with JDK 9.

      C:JAVA > java -cp test.jar com.tutorialspoint.Tester

      Inside Java 9

    13. Question 13. How Many Kind Of Variables/methods An Interface Supports In Java 9?

      Answer :

      With Java 9 interfaces can have following type of variables/methods:

      1. Constant variables
      2. Abstract methods
      3. Default methods
      4. Static methods
      5. Private methods
      6. Private Static methods

    14. Question 14. What Is Default Project Structure For A Web Based Application?

      Answer :

      The following is the default project structure:-

      1. The database scripts are stored in the db folder.
      2. The java source code is stored in the src folder.
      3. The images, js, META-INF, styles (css) are stored in the war folder.
      4. The JSPs are stored in the jsp folder.
      5. The third party jar files are stored in the lib folder.
      6. The java class files are stored in the WEB-INFclasses folder.

    15. Question 15. How Can You Check A System Process Details In Java 9?

      Answer :

      In Java 9 Process API which is responsible to control and manage operating system processes has been improved considerably. ProcessHandle Class now provides processes native processes ID, start time, accumulated CPU time, arguments, command, user, parent process, and descendants.

    16. Question 16. Explain The Use Of Dropwhile Method In Stream?

      Answer :

      dropWhile method throw away all the values at the start until the predicate returns true. It returns, in case of ordered stream, a stream consisting of the remaining elements of this stream after dropping the longest prefix of elements matching the given predicate.

    17. Question 17. Can You Perform Some Function If A Process Exits?

      Answer :

      ProcessHandle class provides method to check processes' liveness and to destroy processes. It has onExit method, the CompletableFuture class can perform action asynchronously when process exits.

    18. Question 18. What Are The Changes Made To Stream From Java 8 In Java 9?

      Answer :

      Streams were introduced in Java to help developers perform aggregate operations from a sequence of objects. With Java 9, few more methods are added to make streams better.

      1. takeWhile
      2. dropWhile
      3. iterate
      4. ofNullable

    19. Question 19. What Are The Changes In Iterate Method Of Stream?

      Answer :

      iterate method now has hasNext predicate as parameter which stops the loop once hasNext predicate returns false.

    20. Question 20. Explain The Use Of Takewhile Method In Stream?

      Answer :

      takeWhile method takes all the values until the predicate returns false. It returns, in case of ordered stream, a stream consisting of the longest prefix of elements taken from this stream matching the given predicate.

    21. Question 21. Explain The Purpose Of Try-with-resource Statement?

      Answer :

      The try-with-resources statement is a try statement with one or more resources duly declared. Here resource is an object which should be closed once it is no more required. The try-with-resources statement ensures that each resource is closed after the requirement finishes. Any object implementing java.lang.AutoCloseable or java.io.Closeable, interface can be used as a resource.

    22. Question 22. Explain The Use Of Ofnullable Method In Stream?

      Answer :

      ofNullable method is introduced to prevent NullPointerExceptions and to avoid null checks for streams. This method returns a sequential Stream containing single element, if non-null, otherwise returns an empty Stream.

    23. Question 23. What Are The Changes Made To @deprecated Annotation In Java 9?

      Answer :

      With Java 9, two new enhancements are made to @Deprecated annotation:-

      1. forRemoval:- Indicates whether the annotated element is subject to removal in a future version. The default value is false.
      2. since:- Returns the version in which the annotated element became deprecated. The default value is the empty string.

    24. Question 24. What Changes Are Made To Optional Class In Java 9?

      Answer :

      Optional Class was introduced in Java 8 to avoid null checks and NullPointerException issues. In java 9, three new methods are added to improve its functionality.

      1. stream()
      2. ifPresent OrElse()
      3. or()

    25. Question 25. What Are The Changes Made To Diamond Operator In Java 9?

      Answer :

      In java 9, it can be used with anonymous class as well to simplify code and improves readability.

    26. Question 26. Explain Purpose Of Completablefuture?

      Answer :

      CompletableFuture class was introduced in Java 8 to represent the Future which can be completed by setting its value and status explicitly. It can be used as java.util.concurrent.CompletionStage. It supports dependent functions and actions which got triggered upon the future's completion. In java 9 CompletableFuture API has been enhanced further. Following are the relevant changes done to the API.

      1. Support for delays and timeouts.
      2. Improved support for subclassing.
      3. New factory methods added.

    27. Question 27. What Is Multi-resolution Image Api In Java 9?

      Answer :

      With Java 9, a new multi-resolution image API has been introduced which supports multiple images with different resolution variants. This API allows a set of images with different resolution to be used as a single multi-resolution image.

      Following are major operations of multi-resolution image:-

      1. Image set Resolution Variant(double destImageWidth, double destImageHeight):-  Gets a specific image which is best variant to represent this logical image at the indicated size.
      2. List get Resolution Variants():- Gets a readable list of all resolution variants.

All rights reserved © 2018 Wisdom IT Services India Pvt. Ltd DMCA.com Protection Status

Java 8 Tutorial