- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java 核心2-第1章
Java2 核心技术Ⅱ;本书课程安排;第1章 泛型;1.1 泛型概述;public class ObjectGroup {
private Object[] elements;
private int size;
public ObjectGroup() {
init();
}
private void init() {
elements = new Object[10];
size = 0;
}
public void add(Object obj) {
if(size = elements.length) {
Object[] temp = new Object[elements.length * 2];
System.arraycopy(elements, 0, temp, 0, elements.length);
elements = temp;
}
elements[size] = obj;
size++;
} ; public void clear() {
init();
}
public Object[] getElements() {
Object[] temp = new Object[size];
System.arraycopy(elements, 0, temp, 0, size);
return temp;
}
public Object get(int index) {
return elements[index];
}
public int getSize() {
return size;
}
}
;泛型(Generics)本质上就是提供类型的”类型参数”,它们也被称为参数化类型(parameterized type)或参量多态(parametric polymorphism);
也指具有在多种数据类型上皆可操作的含义;
声明时用参数化类型代替,使用时指定具体类型;
GJ(Generic Java)是对Java语言的一种扩展,用GJ编写的程序看起来和普通Java程序基本相同,只不过多了一些参数化的类型同时少了一些类型转换;
实际上,编译时这些GJ程序也是首先被转化成一般的不带泛型的Java程序后再进行处理的;
泛型的特点:类型安全、向后兼容、层次清晰、性能收益;1.2 泛型类;public class GenericGroupE {
private E[] elements;
private int size;
public GenericGroup() {
init();
}
private void init() {
elements = (E[])new Object[10];
size = 0;
}
public void add(E obj) {
if(size = elements.length) {
E[] temp = (E[])new Object[elements.length * 2];
System.arraycopy(elements, 0, temp, 0, elements.length);
elements = temp;
}
elements[size] = obj;
size++;
};public void clear() {
init();
}
public Object[] getElements() {
E[] temp = (E[])new Object[size];
System.arraycopy(elements, 0, temp, 0, size);
return temp;
}
public E get(int index) {
return elements[index];
}
public int getSize() {
return size;
}
};1.2.1 泛型类的使用;1.2.2 泛型类的局限;1.2.3 泛型与子类继承;1.3 泛型接口;1.5 受限泛型;???义一个showName方法,使其接受GenericGroupPerson类型的实参;
public static void showName (GenericGroupPerson group) {
for(int i=0; igroup.getSize(); i++) {
System.out.println(Group.get(i).getName());
}
}
注意:这个方法在向其传实参时只
您可能关注的文档
- 2013-2014学年高一英语: Unit5 Nelson Mandela-a modern hero- Extensive reading.ppt
- 2011高三生物复习最新6年高考4年模拟分类汇编:植物生命活动调节.doc
- 2013年一级建造师考试《市政工程管理和实务》考试真题与答案解析.pdf
- 武汉大学C第04讲(05级).ppt
- 2013年驾照C1科目二、科目三考试一些资料与个人心得.doc
- 水力学-绪论+水静力学.ppt
- 夏季养生别被这些误区坑了 一定要警惕_四季养生.pdf
- 2013年驾考新规科目二图文教程_详细扣分标准与通关技巧_整理版.pdf
- 2013年江苏省公务员公共基础知识C类真题与答案.pdf
- 技术前沿--手机电视前途何在?.pdf
文档评论(0)