为什么子类中的重写方法从超类调用方法?

时间:2017-05-12 13:35:22

标签: java swing oop

我有一个扩展JInternalFrame的课程。我覆盖了public void dispose()

看起来像这样

@Override
public void dispose(){
   setVisible(false);
}

尽管我没有打电话给super.dispose(),但在我看来,被覆盖的方法dispose()会调用它。那是为什么?

谢谢!

编辑(附加信息):

实施例: 我有5个类的对象扩展JInternalFrame对象中显示的JDesktopPane。 当我在一个窗口(dispose())上单击退出(调用JInternalFrame)时,JDesktopPane中的组件数量会减一。 这是super.dispose()方法的操作。并且还调用了重写方法dispose(),我通过在控制台上打印来检查

编辑: 我通过调用this.setDefaultCloseOperation(HIDE_ON_CLOSE)而不是覆盖dispose()方法解决了我的问题。但我仍然想知道为什么会发生这种情况......

0 个答案:

没有答案