super 是一个关键字,用在子类构造方法的第一行,new BorderLayout()是一个没有名字的类把他的地址传到父类进行构造,达到使子类继承的同时又改变了自己的属性的效果.比较通俗吧

解决方案 »

  1.   

    你想在自己的构造函数中,调用父类的构造函数吗?想,你就使用这个super(XXX);你想在自己的方法中明示地调用父类的方法吗?想,你就使用super.XXXXX()
      

  2.   

    上面各位已经说的非常清楚了,不过我在这里做些补充
    首先,super关键字和this关键字相对
    我们知道this是指代自己本身。其实super就是指代自己的直接父类。而且这两者都是类的实例。这点需要注意。
    那么super(new BorderLayout())这个方法,原先应该写成
    BorderLayout bl = new BorderLayout();
    super(bl);
    这样写,就一目了然。问题中的写法采用了匿名类的方式,主要是为了书写上的方便。
    super(xxx)的形式,就是调用父类中的构造函数。
    由此,我们可以推测出父类的构造函数中有一个形式是如 public(protected) xxx(BorderLayout bl)
    希望你给你帮助。