Mega Code Archive

 
Categories / Java / Generics
 

Return generic value from method

import java.io.Serializable; class Base { } class Sub1 extends Base implements Serializable {   public void run() {   } } class Sub2 extends Base implements Serializable {   public void run() {   } } public class TypeInference {   static <T extends Base> T infer(T t1, T t2) {     return null;   }   public static void main(String[] args) {     Base base = infer(new Sub1(), new Sub2());     Serializable runnable = infer(new Sub1(), new Sub2());   } }