Example 1: How to achieve multiple inheritance in Java using interfaces and default methods
GD.java
interface WhiteBank
{
    default void bonus()
    {
        System.out.println("WhiteBank Festival Bonus: 500");
    }
}
interface GreenBank
{
    default void gift()
    {
        System.out.println("GreenBank Festival Gift: 1000");
    }
}
class GD implements WhiteBank, GreenBank
{
    public static void main(String args[])
    {
        GD g=new GD();
        k.bonus();
        k.gift();
    }
}
Output
godarda@gd:~$ javac GD.java
godarda@gd:~$ java GD WhiteBank Festival Bonus: 500 GreenBank Festival Gift: 1000 godarda@gd:~$
Example 2: How to achieve multiple inheritance in Java using interfaces and default methods
GD.java
interface WhiteBank
{
    default void bonus()
    {
        System.out.println("WhiteBank Festival Bonus: 500");
    }
}
interface GreenBank
{
    default void bonus()
    {
        System.out.println("GreenBank Festival Bonus: 1000");
    }
}
class GD implements WhiteBank, GreenBank
{
    public void bonus()
    {
        WhiteBank.super.bonus();
        GreenBank.super.bonus();
    }
    public static void main(String args[])
    {
        GD g=new GD();
        k.bonus();
    }
}
Output
godarda@gd:~$ javac GD.java
godarda@gd:~$ java GD WhiteBank Festival Bonus: 500 GreenBank Festival Bonus: 1000 godarda@gd:~$
Comments and Reactions
What Next?
Java Collections