@@ -0,0 +1,889 @@
+package com.linbo.algs.leetcode;%0A%0A/**%0A * Created by @linbojin on 11/2/17.%0A */%0A%0Aclass A %7B%0A  public String show(D obj) %7B%0A    return (%22A and D%22);%0A  %7D%0A%0A  public String show(A obj) %7B%0A    return (%22A and A%22);%0A  %7D%0A%7D%0A%0Aclass B extends A %7B%0A  public String show(B obj) %7B%0A    return (%22B and B%22);%0A  %7D%0A%0A  public String show(A obj) %7B%0A    return (%22B and A%22);%0A  %7D%0A%7D%0A%0Aclass C extends B %7B%7D%0A%0Aclass D extends B %7B%7D%0A%0Apublic class Polymorphism %7B%0A  public static void main(String%5B%5D args) %7B%0A    A a1 = new A();%0A    A a2 = new B();%0A    B b = new B();%0A    C c = new C();%0A    D d = new D();%0A    System.out.println(a1.show(b));%0A    System.out.println(a1.show(c));%0A    System.out.println(a1.show(d));%0A    System.out.println(a2.show(b));%0A    System.out.println(a2.show(c));%0A    System.out.println(a2.show(d));%0A    System.out.println(b.show(b));%0A    System.out.println(b.show(c));%0A    System.out.println(b.show(d));%0A  %7D%0A%0A%7D%0A

add oop Polymorphism concept