黑马程序员技术交流社区

标题: 泛型方法的返回值问题 [打印本页]

作者: Synaric    时间: 2015-10-10 15:32
标题: 泛型方法的返回值问题
  1. public class GenericDemo_3 {
  2.         public static void main(String[] args) {
  3.                 //add返回Number而不是Float,因为Number类型是Integer和Float的交集
  4.                 //float f1 = add(3, 3.5);                error
  5.                 Number n1 = add(3, 3.5);            //ok
  6.                
  7.                 Object object = add(1, "abc");                //ok
  8.         }
  9.        
  10.         private static <T> T add(T a, T b){
  11.                 //The operator + is undefined for the argument type(s) T, T
  12.                 //return (a + b);
  13.                 return null;
  14.         }
  15. }
复制代码
   返回值有些出乎意料,是取“两类型的最小父类”。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2