首页 新闻 搜索 专区 学院

JAVA问题???

0
悬赏园豆:5 [已解决问题] 解决于 2015-10-29 21:46

package packtwo; import packtwo.Person; import packtwo.Student; import packtwo.Teacher; public class List {   class Node{  public Object data;  Node next;  public Node()  {     }  public Node(Person data)  {   this.data=data;   this.next=null;  }  public Node(Student data)  {   this.data=data;   this.next=null;  }  public Node(Teacher data)  {   this.data=data;   this.next=null;  } } Node first=null; public List() {  this.first=null; }

void cteatLinklist() {    Person person=new Person("张三",12310000);  Node node1=new Node(person);  Student student=new Student("李四",12320000,89,93,94);  Node node2=new Node(student);  Teacher teacher=new Teacher("王五",12330000,3000);  Node node3=new Node(teacher);  first=node1;  node1.next=node2;  node2.next=node3;  

----------person有自己写的toStr();

?????????为啥person可以调用自己的toStr();可是node1.data.toStr();就是错的???

----- 

这是自己写的,输出函数,person的实例方法public void toStr()
 {
  System.out.println( "姓名 "+name+"\n"+"身份证号 "+IDnum);
 }-----------------

    }

 

   public static void main(String[] args) {   // TODO Auto-generated method stub     List list=new List();  list.cteatLinklist();     }

}

邗影的主页 邗影 | 初学一级 | 园豆:73
提问于:2013-04-19 22:17
< >
分享
最佳答案
0

我完全看不清楚你写的什么,,,下回放代码上来,注意下格式!

不然没人愿意给你看。。。。

试一下强制类型转换

((Person)node1.data).toStr();

收获园豆:5
SeeMore | 菜鸟二级 |园豆:313 | 2013-04-20 22:41

谢谢,我一粘过来就这死样子,你说这种只是存入读出的。不用链表行吧

邗影 | 园豆:73 (初学一级) | 2013-04-20 22:49

@邗影: 链表和顺序表各有各的好处,可惜java没有提供现成的链表(有我也不知道,你可以搜一下)。如果没必要用到链表的话 用List<T> 更好一些!

SeeMore | 园豆:313 (菜鸟二级) | 2013-04-21 22:04
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册