gpt4 book ai didi

java - 类构造函数调用另一个类

转载 作者:太空宇宙 更新时间:2023-11-04 15:21:28 26 4
gpt4 key购买 nike

我想要两个构造函数,其中一个调用另一个。

示例:

public class MyButton extends JButton {
private final ImageIcon neutralIcon;
private final ImageIcon pressedIcon;
private final ImageIcon rollOverIcon;

public MyButton(String n,
String p,
String r,
Dimension d)
{
neutralIcon = new ImageIcon(this.getClass().getResource(n));
pressedIcon = new ImageIcon(this.getClass().getResource(p));
rollOverIcon = new ImageIcon(this.getClass().getResource(r));
this.setIcon(neutralIcon);
this.setPressedIcon(pressedIcon);
this.setRolloverIcon(rollOverIcon);

this.setFocusPainted(false);
this.setContentAreaFilled(false);
this.setSize(d);
}

public MyButton(String n,
String p,
String r)
{
this(n,p,r,this.getPreferredSize()); // COMPILE ERROR
}

}

我需要获取 PreferredSize,但 NetBeans 说“在调用父类(super class)型构造函数之前无法引用此值”。

我尝试了“ super ”的东西,但它仍然给我错误。

我的 friend 告诉我将 getPreferredSize 放入变量中,但它不起作用。

Dimension d = this.getPreferredSize();
this(n,p,r,d); // COMPILE ERROR

最佳答案

试试这个

 public MyClass(String n, 
String p,
String r)
{

this(n,p,r,new Dimension(WIDTH, HEIGHT)); // COMPILE ERROR
}

关于java - 类构造函数调用另一个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20348784/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com