泛型!你真的还了解吗?

「这是我参与11月更文挑战的第4天,活动详情查看:2021最后一次更文挑战」。

茫茫人海千千万万,感谢这一秒你看到这里。希望我的文章对你的有所帮助!

愿你在未来的日子,保持热爱,奔赴山海!

前言:昨天我们讲到了泛型的使用有了一定了解!但是泛型不仅仅能作用于类上,还可以作用于方法上。

所以,接下来我们将会对泛型的使用2——泛型方法的学习。

😒泛型的使用2

泛型虽然通常会被大量的使用在集合当中,但是我们也可以完整的学习泛型知识。泛型有三种使用方式,分别为:泛型类、泛型方法、泛型接口。将数据类型作为参数进行传递。

今天我们将注重学习泛型用于定义方法上将如何使用。

😲4.2 泛型方法

泛型方法,是在调用方法的时候指明泛型的具体类型

  • 定义格式:

    修饰符 <代表泛型的变量> 返回值类型 方法名(参数){  }
    复制代码

    例如:

    /**
         *
         * @param t 传入泛型的参数
         * @param <T> 泛型的类型
         * @return T 返回值为T类型
         * 说明:
         *   1)public 与 返回值中间<T>非常重要,可以理解为声明此方法为泛型方法。
         *   2)只有声明了<T>的方法才是泛型方法,泛型类中的使用了泛型的成员方法并不是泛型方法。
         *   3)<T>表明该方法将使用泛型类型T,此时才可以在方法中使用泛型类型T。
         *   4)与泛型类的定义一样,此处T可以随便写为任意标识,常见的如T、E等形式的参数常用于表示泛型。
         */
        public <T> T genercMethod(T t){
            System.out.println(t.getClass());
            System.out.println(t);
            return t;
        }
    复制代码
  • 调用方法时,确定泛型的类型

    public static void main(String[] args) {
        GenericsClassDemo<String> genericString  = new GenericsClassDemo("helloGeneric"); //这里的泛型跟下面调用的泛型方法可以不一样。
    ​
        String str = genericString.genercMethod("hello");//传入的是String类型,返回的也是String类型
        Integer i = genericString.genercMethod(123);//传入的是Integer类型,返回的也是Integer类型
    }
    复制代码

    这里我们可以看下结果:

    class java.lang.String
    hello
    class java.lang.Integer
    123
    复制代码

    这里可以看出,泛型方法随着我们的传入参数类型不同,他得到的类型也不同。泛型方法能使方法独立于类而产生变化。

🌸总结

相信各位看官都对泛型的使用有了更深入的了解,知道如何去使用泛型定义方法,那我们继续期待下一章的泛型的更多使用吧!欢迎期待下一章的到来!

让我们也一起加油吧!本人不才,如有什么缺漏、错误的地方,也欢迎各位人才大佬评论中批评指正!当然如果这篇文章确定对你有点小小帮助的话,也请亲切可爱的人才大佬们给个点赞、收藏下吧,一键三连,非常感谢!

学到这里,今天的世界打烊了,晚安!虽然这篇文章完结了,但是我还在,永不完结。我会努力保持写文章。来日方长,何惧车遥马慢!

感谢各位看到这里!愿你韶华不负,青春无悔!