用一棵树把类表示出来,想半天还没想好,哪位大神帮帮忙

解决方案 »

  1.   

    #package resources;import java.util.ArrayList;
    import java.util.List;abstract class Component {
    protected String name; public Component(String name) {
    this.name = name; } abstract void add(Component c); abstract void remove(Component c); abstract void display();
    }class Leaf extends Component {
    public Leaf(String name) {
    super(name);
    } @Override
    public void add(Component c) { } @Override
    public void remove(Component c) { } @Override
    public void display() {
    System.out.println(new String("--") + name);
    }
    }class Composite extends Component {
    public Composite(String name) {
    super(name);
    } private List<Component> childen = new ArrayList<Component>(); @Override
    public void add(Component c) {
    childen.add(c); } @Override
    public void remove(Component c) {
    childen.remove(c); } @Override
    public void display() {
    System.out.println(new String("-") + name);
    for (Component c : childen) {
    c.display();
    }
    }
    }public class TestComposite {
    public static void main(String[] args) {
    Composite root = new Composite("root");
    root.add(new Leaf("Leaf 1"));
    root.add(new Leaf("leaf 2")); Composite comp = new Composite(" X");
    comp.add(new Leaf("leaf x1"));
    comp.add(new Leaf("leaf x2"));
    root.add(comp); root.display();
    }}
      

  2.   

    楼主说的类是自己创造的类还是java自定义好的类?
      

  3.   

    根是Object,然后有很多类和接口的,自己动手找找了
      

  4.   

    API帮助文档里,各个类之间层次关系,慢慢看吧。。
      

  5.   

    同楼上  楼主自己看API文档
      

  6.   

    说的太好了,所有的类都是object类的子类