Java 每当超类';构造函数被调用

Java 每当超类';构造函数被调用,java,constructor,superclass,Java,Constructor,Superclass,我想扩展JPanel class VisiblePanel extends JPanel{ } 如何使VisiblePanelcallsetVisible(true)每当实例化时,不逐个重写所有构造函数?通过提供调用此.setVisible(true)的默认构造函数并确保如果你重载构造函数,你仍然会处理它我将Jigar Joshi的答案和DaaaahWhoosh的评论结合起来,并添加更多内容 超类构造函数不是继承的,因此无法调用超类构造函数。() 因此,最好的方法是创建一个执行所需操作的默认

我想扩展JPanel

class VisiblePanel extends JPanel{

}

如何使
VisiblePanel
call
setVisible(true)每当实例化时,不逐个重写所有构造函数?

通过提供调用此.setVisible(true)的默认构造函数并确保如果你重载构造函数,你仍然会处理它

我将Jigar Joshi的答案和DaaaahWhoosh的评论结合起来,并添加更多内容

超类构造函数不是继承的,因此无法调用超类构造函数。()


因此,最好的方法是创建一个执行所需操作的默认(无参数)构造函数,并从其他构造函数调用它。如果默认构造函数需要做其他构造函数不应该做的事情,那么创建一个初始化方法并从每个构造函数调用它是一个好办法。

如果创建一个子类,您必须为该子类定义所有构造函数,因此您不妨覆盖您计划使用的构造函数。