JAVA基础之“泛型”

一、泛型意义:编写的代码可以被不同类型的对象重用

原始方式:使用object类型,然后进行强转;

泛型优点:更好的安全性和可读性;

泛型定义:具有一个或多个类型变量的类;

二、简单泛型类示例

 1 /**泛型类*/
 2 
 3 /*单个泛型变量*/
 4 public class Part1<T>{
 5 /*方法中简单使用泛型*/
 6 public Part1(T first,T second){......};    
 7 }
 8 
 9 /*多个泛型变量*/
10 public class Part2<T,U>{......}

 其中:类型变量的作用范围:指定方法的返回类型、域(注!)、局部变量的类型;

类型变量表示含义:E-集合的元素类型;K/V-表的关键字/值的类型;T(需要时可以用临近的U/S)表示“任意类型”;

三、泛型方法(可以定义在普通类中)

泛型方法示例:

/**泛型方法示例*/

/*普通类*/
class ArrayAlg{
/*类型变量位置:修饰符后面,返回类型前面,其中T...代表多个泛型参数*/
    public static <T> getMiddle(T... a)
    {
        return a[a.length/2];
    }
}

//调用泛型方法
String middle = ArrayAlg.<String>getMiddle("A","B","C");

四、类型变量的限定

(这里补充域的定义:field,域是一种属性,可以是一个类变量,一个对象变量,一个对象方法变量或者是一个函数的参数。(补充,class‘s variables,类的实例变量和静态变量称为class's variables,类属变量,也称类变量或数据域;原文:https://blog.csdn.net/iaiti/article/details/38794007)

猜你喜欢

转载自www.cnblogs.com/silence-fire/p/9163367.html