没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
由于在使用泛型的时候,将会擦除类型参数,而只保留原始类型。所以在使用泛型时,
我们不能使用 new T(),也不能使用 instanceof, 因为这两类操作要知道确切的类型。此问题
的解决方案有三种(设计模式的使用):简单工厂(最简单),工厂方法(最灵活),模板
方法(最简捷)。
1. 简单工厂
在此方法中,将类型作为参数,以一个万能的工厂类(其中有一个返回具体类型类的
实例的泛型方法)用类的 newInstance()方法返回参数化类型的实例,如下所示:
优点:简单,直接使用泛型方法
缺点:
(1) 单一使用 Class 对象的 newInstance()方法只能使用默认的构造器,使得对象的创建
有限制。
(2) 若一个具体的类无默认的构造器,则会抛出异常。
2. 工厂方法
与简单工厂方法相比,工厂方法加入了如下几个元素:
(1) 工厂接口/抽象接口---具体工厂公共的接口/类型
(2) 具体工厂-----由具体工厂负责具体产品的创建,且其必须保证产品的成功的创建,
在具体工厂中可调用各种各样的构造方法,因为具体工厂中已将参数化类型具体化。
泛型方法
资源评论
- wuanmoranhuishou2014-07-14挺不错的哦
- liujunjie20092014-08-10说的还可以哈 其实就是thinking java里面说的3种
- hxtome2012-09-25文档里面讲的挺详细的。
beautygirlzhy
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功