温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

黑马程序员之《Generic》

发布时间:2020-07-03 15:56:45 来源:网络 阅读:625 作者:guhaibin 栏目:安全技术

---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------

1.泛型

 1.概述

 泛型是为了解决了集合中存储对象安全问题,如果集合中存数了不同类型的对象,那么读取出来后,操作取出的对象以为不知道类型,会出现安全问题,但是这不会在编译时期提示错误,而是会在运行时期出现问题,所以泛型会把运行时期的错误移到了编译时期,那么错误就会避免。

2.集合中的泛型

在集合中都会存在泛型,下同时迭代器中也定义了泛型,在读取出来后,我们也要指定迭代器的类型,这样我们就不需要强制类型转换了,因为迭代器中就指定了类型,所以读取出来的对象类型也就是我们指定的类型。

黑马程序员之《Generic》

2.自定义的泛型类,可以按照我们随意要求指定类型

黑马程序员之《Generic》

3.泛型的方法:

1.一个泛型

黑马程序员之《Generic》

2.多个泛型:

黑马程序员之《Generic》

3.静态方法上的泛型

把泛型定义在返回值和修饰符之间

静态方法上的泛型的定义需要自己定义,不要和类上的泛型统一,因为静态方法只要是类一加载就生成,如果和类上的泛型统一的话,在静态方法加载的时候,没有对象生成,也就没有指定泛型的类型,那么就会出错,这些都和泛型定义出现的时间有关。

package www.fuxi.jihe;


public class Demo<T> {


 public static <Q> void show(Q q){//这里不要和类上的泛型统一

  System.out.println("show:"+q);

 }

 public static void main(String [] agrs){

  Demo.show("hello");


 }


}

结果:

show:hello

4.接口上的泛型

黑马程序员之《Generic》

下面是对象的泛型:

黑马程序员之《Generic》

5.泛型的高级应用:通配符

通配符用?表示,也叫占位符,可以表示任意类型

黑马程序员之《Generic》

结果:

abc

123

zhangsan

----------------------

25

100

200


---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI