Вы можете использовать инициализатор экземпляра. Этот инициализатор может обработать или ваш требуемый «некоторый код» для всех вариантов конструктора.
public class JLProgressBar extends JProgressBar{
public JLProgressBar(){
super();
}
public JLProgressBar(int orient){
super(orient);
}
public JLProgressBar(int min, int max){
super(min,max);
}
public JLProgressBar(int orient, int min, int max){
super(orient,min,max);
}
public JLProgressBar(BoundedRangeModel newModel){
super(newModel);
}
// instance initializer (called for every constructor
{
// "some code"
}
}
Примечание: этот инициализатор экземпляра будет запускаться после супер-конструктора, но до любой другой код в конструкторе. Так что
public class Bar
{
protected int a;
public Bar()
{
a = 2;
System.out.println(a);
}
{
a = 1;
System.out.println(a);
}
}
public class Foo extends Bar
{
public Foo()
{
super();
a = 4;
System.out.println(a);
}
{
a = 3;
System.out.println(a);
}
}
public static void main(String[] args)
{
new Foo();
}
... напечатает
1
2
3
4