抽象类如何将子类作为成员的类型

想写一个List,其中Node的定义如下:

 public abstract class Node{
    public Node son=null;//为了测试方便,使用public
    //……还有好多
}

这样是想以后用的时候可以继承Node再添加实体。显然这么定义是不行的,因为以下代码可以通过:

A a=new A();//A extends Node
a.son=new B();//B extends Node

那么怎么定义呢?
PS:如果写成

 public class Node<T>{
    private Node son=null;
    private T t=null;
}

这样然后实体作为参数传给Node可以实现的这种事情我也是知道的。单纯是觉得不美丽。

查看全部
baidu_28379135
baidu_28379135
2015/07/23 09:04
  • java
  • 抽象
  • 泛型
  • 点赞
  • 收藏
  • 回答
    私信
满意答案
查看全部

1个回复