Example 1: How to achieve multiple inheritance in Java using interfaces and default methods
Codeaft.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 Codeaft implements WhiteBank, GreenBank
{
    public static void main(String args[])
    {
        Codeaft c=new Codeaft();
        c.bonus();
        c.gift();
    }
}
Output
codeaft@codeaft:~$ javac Codeaft.java
codeaft@codeaft:~$ java Codeaft WhiteBank Festival Bonus: 500 GreenBank Festival Gift: 1000 codeaft@codeaft:~$
Example 2: How to achieve multiple inheritance in Java using interfaces and default methods
Codeaft.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 Codeaft implements WhiteBank, GreenBank
{
    public void bonus()
    {
        WhiteBank.super.bonus();
        GreenBank.super.bonus();
    }
    public static void main(String args[])
    {
        Codeaft c=new Codeaft();
        c.bonus();
    }
}
Output
codeaft@codeaft:~$ javac Codeaft.java
codeaft@codeaft:~$ java Codeaft WhiteBank Festival Bonus: 500 GreenBank Festival Bonus: 1000 codeaft@codeaft:~$
Comments and Reactions
What Next?
Java Collections