概述
模板类
模板类用与表示通用的数据结构和算法。
例如,定义一个类List,表示通用链表(适用于任意对象的类型)
定义模板类:
class List<T>{
}
使用模板类:创建List对象时应指定参数类型
List<Student> stus=new List<Student>();
注意:并不是非常必要。
以为所有的对象都是Object的子类。
把所有子类换成Object就可以了。
注:Java的模板类属于类,而C++属于模板
似乎在任何情况下,都没必要自己写一个模版类
1.Java自带了ArrayList,HashMap等模版类。
2.直接使用Object作为元素类型。
代码如下:
HelloWorld.java
package my;
public class HelloWorld
{
public static void main(String[] args)
{
Student a=new Student(1000,"小明");
Student b=new Student(1001,"小白");
PeopleList<Student> studentList = new PeopleList<Student>();
studentList.initList();
studentList.add(a);
studentList.add(b);
PeopleList<Teacher> teacherList=new PeopleList<Teacher>();
teacherList.initList();
teacherList.add(new Teacher(2000,"球球"));
teacherList.add(new Teacher(2001,"腿腿"));
teacherList.add(new Teacher(2002,"闰土"));
ObjectList studentList2=new ObjectList();
studentList2.initList();
studentList2.add(new Student (1000,"小明"));
studentList2.add(new Student (1001,"闰土"));
}
}
ObjectList.java
package my;
import my.PeopleList.LinkNode;
public class ObjectList
{
LinkNode head;
LinkNode LinkList;
class LinkNode{
public Object Data;
public LinkNode next;
}
public void initList() {
LinkNode p=new LinkNode();
head=p;
head.next=null;
}
public void add(Object a) { //头插法
LinkNode p=new LinkNode();
p.Data=a;
LinkNode q=head;
p.next=q.next;
q.next=p;
}
}
package my;
public class PeopleList<T>
{
LinkNode head;
LinkNode LinkList;
class LinkNode{
public T Data;
public LinkNode next;
}
public void initList() {
LinkNode p=new LinkNode();
head=p;
head.next=null;
}
public void add(T a) { //头插法
LinkNode p=new LinkNode();
p.Data=a;
LinkNode q=head;
p.next=q.next;
q.next=p;
}
}
package my;
public class Student
{
int id;
String name;
public Student(int id,String name) {
this.id=id;
this.name=name;
}
}
Teacher.java
package my;
public class Teacher
{
private int id;
private String name;
public Teacher(int id,String name) {
this.id=id;
this.name=name;
}
}
Java基础入门笔记-数组链表
http://blog.csdn.net/qq78442761/article/details/78996551
最后
以上就是高大毛豆为你收集整理的Java高级语法笔记-模板类 Java基础入门笔记-数组链表的全部内容,希望文章能够帮你解决Java高级语法笔记-模板类 Java基础入门笔记-数组链表所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复