关于public <T> T method(T t)函数的说明

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tianmaxingkong_/article/details/75452676

现有这么一个函数:

[正确示例]

public <T> T method(T t){
        // CODE
        return t;
}

上面的代码,在public和method之间有两个部分<T>和T。


其中<T>是为了定义当前我有一个 范型变量类型,类型名使用T来表示,而第二部分T,表示method这个函数的返回值类型为T,其中的<T>只是为了在函数声明前,定义一种范型;因此下面的函数也是合法的:

[正确示例]

public <T> int method1(T t){
        // CODE
        return 1;
}


上面的函数,<T>也是为了定义一种范型,用来提前声明形参的类型是一个范型变量。


相反的,在使用自定义的范型T之前,如果不首先使用<T>来声明范型变量的存在的话,编译器会有错误提示:

[错误示例]-(没有声明范型变量类型T)

public T method(T t){
        // CODE
        return t;
}

[错误示例]-(没有声明范型变量类型T)

public int method(T t){
        // CODE
        return 1;
}


猜你喜欢

转载自blog.csdn.net/tianmaxingkong_/article/details/75452676
T