关于泛型方法和成员方法

泛型方法和成员方法

public  class  Test<T> {//定义一个泛型类

    //普通成员方法
   public T  test01(T t){
       return t;
   }

   //泛型方法
    public<E> E test02(E e){
       return e;
    }

}

调用

  public static void main(String[] args) {
        
        //String类型
        Test<String> stringTest = new Test<>();
        //调用普通方法,参数类型必须是String
        stringTest.test01("hello,world").getClass().getSimpleName();
        //调用泛型方法,类型由所给参数确定,而不一定是String
        stringTest.test02(18);
    }

另外,如果把泛型方法的类型与类的类型保持一致时

public  class  Test<T> {//定义一个泛型类

    //普通成员方法
   public T  test01(T t){
       return t;
   }

   //泛型方法
    public<T> T test02(T t){
       return t;
    }

}

这时泛型方法的类型也不会由类的类型强制约束
在这里插入图片描述
而成员方法则会受到类的类型约束只能是String,可见泛型方法和类之间是独立的。

除此之外,当类是泛型类时,其成员方法不可以是静态的,而泛型方法可以是静态的,进一步说明了泛型方法与类的独立性。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值