Skip to main content

Java-8

Java 8 New Features

There are several new features added in Java 8 version. Some of the important new features are:
  1. Define methods inside the interface
  2. For each method
  3. Lambda Expression
  4. Stream API
  5. DateTime API

1) Define methods (default, static) inside the Interface

After you published your interface, you can't change it by adding some abstract methods. But if you want to add methods you can define those methods inside the interface. Therefore Java 8 support default and static methods inside the interface.
  • In Java 7 version interface only have abstract methods (no method implementation) and an abstract class can have both abstract and non-abstract methods.
  • In Java 8 version you can add method implementation in the interface, but you have to declare that method as default method.
ex: default void show(){............}
  • To avoid diamond problem you have to override the method in implementation class if two interfaces have same default method




  • If class (A) and interface (I) both have the same method an another class (B) use this method that extends A and implements I, B get the method of class A, because class is more powerful than interface
  • Static methods are allowed inside the interface. 


2) For each method

If you want to loop collection, until Java 7 you can use for loop or enhanced for loop.
  • For loop

  • Enhanced for loop

But above two kinds of loops are called external loops. They are fetching the values from outside of the collection.But in Java 8 you can use foreach method to loop and it is considered as an internal loop.
  • For each method
For each method implements the accept method in Consumer interface.

3) Lambda Expression

If you have an interface with abstract methods you can use that method implementation in another class without implementing that class with the defined interface. 


4) Stream API 

Stream API contains a lot of methods to handle big data. The methods defined in stream API can be divided into two types


  • Intermediate method
    • Once you used data you can't use it again
  • Terminate method

5) Date/Time API

Date/Time API provides LocalDate, LocalTime and LocalDateTime methods that support to print date and times easily.





Comments

Popular posts from this blog

Sorting Algorithms

Bubble Sort Named as sinking sort. Compare each pair of the adjacent items and swap them if they are in the wrong order. Worst case and average case time complexity both O(n^2)  and best case time complexity is O(n).

Java- Interview

Here are some popular tips in Java General Question JVM - Java Virtual Machine. Used to execute byte code. Platform dependent (but byte code is platform independent) JRE- Java Run time Environment. It provides run time environment and it's the implementation of JVM. It contains libraries and files that need to execute JVM.   JDK- Java Development Kit. It contains JRE and development tools. Why java doesn't support pointers: It's insecure and complex to understand We can save java file with another name if class is not defined as public Java use camalCase notation for objects naming (ex: firstName) OOP Concepts Related  Aggregation: weak relationship (bike has an indicator) Composition:  strong relationship (bike has an engine) GUI Java GUI - Install Window builder to create GUI using Eclipse IDE Code Related No issues when you write static public void instead of public static void We can execute program without main method : using static bloc...

Hibernate

Hibernate is an ORM (Object Relational Mapping) tool which is primarily used in the data layer. Object Relational Mappings Problems There are several problems can occur when you are trying to save objects in the database from the scratch without using Hibernate. Mapping member variables to columns Mapping relationships Handling data types Managing changes to an object Set Up the Development Environment  Following steps are briefly pointed out how to set up Hibernate on your local machine. Download the hibernate jar files Create a project in Eclipse Right click on the project name and go to properties Navigate to libraries tab Add library and import jar files (lib-> JPA/required) Add Postgres JDBC driver as jar file Configurations After you set up the Hibernate you have to create hiberante.cfg.xml file and do some configurations like setup database details, entity class, etc. Dialect: Define what kind of language should use to talk...