java的模板类可以理解为含有Object类型的类。
1. java的模板类的模板参数只能是参数类型,成员变量类型等,模板名是确定的。
2. 运行期,模板参数会被当作Object来处理,已经验证
3. 使用模板类的类型安全,只是利用编译器的类型检查,来自动保证运行期的类型强转的正确与安全。
- 上一篇:UI layout设置技巧
- 下一篇:Android 动画框架详解
class TestTemplate
{
public static void main(String[] args)
{
//vector<T> v=new vector<T>();
Byte b=new Byte((byte)0);
vector<Byte> v=new vector<Byte>(b);
v.add((byte)0);
v.add((byte)1);
v.add((byte)3);
v.add((byte)2);
v.visitAll();
}
}
class vector<T>{
private int size=0;
private vectorElement<T> head=null;
private vectorElement<T> last=null;
public vector(T datum)
{
System.out.println("vector(T datum)!");
this.head=new vectorElement<T>(datum);
this.last=this.head;
this.size=1;
}
public boolean add(T datum){
if(this.size==0){
this.head=new vectorElement<T>(datum);
this.last=this.head;
this.size=1;
}else{
vectorElement<T> temp=new vectorElement<T>(datum);
temp.previous=this.last;
this.last.next=temp;
this.last=temp;
this.size=this.size+1;
}
return true;
}
public void visitAll()
{
vectorElement<T> walker;
walker=head;
while(walker !=null)
{
System.out.println(walker.datum);
walker=walker.next;
}
}
}
class vectorElement<T>{
public vectorElement<T> next=null;
public vectorElement<T> previous=null;
public T datum=null;
public vectorElement(T datum){ this.datum=datum; }
}
/*
vector(T datum)!
0
0
1
3
2
请按任意键继续. . .
*/