首页 > 代码库 > Java编程思想-泛型-泛型方法

Java编程思想-泛型-泛型方法

代码示例如下:

package generics;//: generics/GenericMethods.javapublic class GenericMethods<A> {    // private static A element;    public <T> void f(T x) {        System.out.println(x.getClass().getName());    }    // public static void staticMethod(A x) {    //    // }    public static void main(String[] args) {        GenericMethods<String> gm = new GenericMethods<String>();        gm.f("");        gm.f(1);        gm.f(1.0);        gm.f(1.0F);        gm.f(‘c‘);        gm.f(gm);    }} /* * Output: java.lang.String java.lang.Integer java.lang.Double java.lang.Float * java.lang.Character GenericMethods */// :~

 

static方法无法访问泛型类的类型参数,举例如下:

上例中

private static A element;这段代码报错信息如下:

Cannot make a static reference to the non-static type A

##################

public static void staticMethod(A x) {

}

这个方法报错信息如下:

Cannot make a static reference to the non-static type A

 

java自动打包的概念是什么

Java编程思想-泛型-泛型方法