Get Even More Visitors To Your Blog, Upgrade To A Business Listing >>

JAVA New Features – Lambda Expressions, Functional Interfaces

This Blog explains about Java 8 – New Features – Lambda Expressions, Functional Interfaces.

Lambda Expressions:

WHY:

Functional Programming

WHAT:

Anonymous Functions: Closures

Function – Method:

HOW:

Eg: 1

public Void display()
{
System.out.println(“Hi”);
}

1) Remove Method Name

public void ()
{
System.out.println(“Hi”);
}

2) Remove return datatype

public ()
{
System.out.println(“Hi”);
}

3) Remove Access Modifiers if any.

()
{
System.out.println(“Hi”);
}

4) Add -> in between () and {}

() ->
{
System.out.println(“Hi”);
}

Eg. 2:

public void add(int no1, int no2)
{
System.out.println(“Hi”);
}

public void (int no1, int no2)
{
System.out.println(“Hi”);
}

public (int no1, int no2)
{
System.out.println(“Hi”);
}

(int no1, int no2)
{
System.out.println(“Hi”);
}

(int no1, int no2) ->
{
System.out.println(“Hi”);
}

(no1, no2) ->
{
System.out.println(“Hi”);
}

(no1) ->
{
System.out.println(“Hi”);
}

no1 -> { System.out.println(“Hi”); }

Eg. 3:

public int add(int no1, int no2)
{
return no1 + no2;
}

(no1, no2) -> { return no1 + no2; }

Functional Interfaces:

Comparable / Runnable

An Interface with only one abstract method. Apart from this abstract method, we can have any number of default and static methods.

Without Lambda:

interface Contract
{
public void rule1();
}

interface Contract
{
public void rule1();
}

class Citizen implements Contract
{
public void rule1()
{
System.out.println(“Hi”);
}
}

class Abcd
{
p s v main()
{
Contract ci = new Citizen();
ci.rule1();
}

@FunctionalInterface

Inner Classes:

Anonymous classes

Without Lambda:

public class Test3 {

public static void main(String[] args) {
    // TODO Auto-generated method stub

    Thread t = new Thread(
            new Runnable()
            {
                public void run()
                {
                    for(int i=1; i

With Lambda:

public class Test3 {

public static void main(String[] args) 
{
    Thread t = new Thread(
    () -> 
    {
        for(int i=1; i

}



This post first appeared on Best .NET Training Institutes In Chennai, please read the originial post: here

Share the post

JAVA New Features – Lambda Expressions, Functional Interfaces

×

Subscribe to Best .net Training Institutes In Chennai

Get updates delivered right to your inbox!

Thank you for your subscription

×