以下代码返回错误说明:
"constructor call must be the first statment in a constructor."
我不明白。我的代码中的构造函数是第一个语句。我究竟做错了什么?
public class labelsAndIcons extends JFrame
{
public labelFrame()
{
super( "Testing JLabel" );
}
}
答案 0 :(得分:6)
构造函数名称必须与类名相同,因此更改要么将类名更改为labelFrame
,要么将构造函数名称更改为labelsAndIcons
。
示例(请注意,通常第一个字母是java中的大写字母):
public class LabelFrame extends JFrame {
public LabelFrame() {
super( "Testing JLabel" );
}
}
答案 1 :(得分:2)
public class labelsAndIcons extends JFrame {
public labelsAndIcons ()
{
super( "Testing JLabel" );
}
}
答案 2 :(得分:0)
构造函数名称必须与类名相同。 我们来看看:
constructor call must be the first statement in a constructor
constructor call
中的构造函数引用超类的构造函数super();
in a constructor
中的构造函数单词指的是您的类的缩写:public labelsAndIcons()
所以你需要将代码缩小到这个:
public class labelsAndIcons extends JFrame
{
public labelsAndIcons ()
{
super( "Testing JLabel" );
}
}
答案 3 :(得分:0)
理想情况下,您的代码无法说Invalid Method declartion
,因为public labelFrame()
无论你的代码如何改变:
public class labelsAndIcons extends JFrame
{
public labelsAndIcons ()
{
super( "Testing JLabel" );
}
}