菜鸟问题:这么小的一个程序怎么会出错的(求救:看看吧,半分钟就看完了,不耽误你的时间)

tangli1020 2002-11-29 04:11:40
程序:
import java.awt.*;
import javax.swing.*;


public class Test extends JFrame
{
public Test()
{

}

Container contentPane = getContentPane();


JPanel p = new JPanel();
contentPane.add(p,"Center");

JButton b = new JButton("sdf");

p.add(b);

public static void main(String[] args)
{
JFrame f = new Test();
f.show();
}
}

用TextPad编译,提示如下:

D:\Test.java:16: 期望 <identifier>
contentPane.add(p,"Center");
^
D:\Test.java:20: 期望 <identifier>
p.add(b);
^
D:\Test.java:16: 不能解析符号
符号:类 add
位置:包 in contentPane
contentPane.add(p,"Center");
^
D:\Test.java:20: 不能解析符号
符号:类 add
位置:包 in p
p.add(b);
^
4 个错误

工具以退出代码 1 完成

(错在哪里,找不出来啊,拜托~~~~~~)
...全文
17 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
tangli1020 2002-12-01
  • 打赏
  • 举报
回复
谢谢大家,明白了,已经解决,散分了。
wangwang45 2002-11-30
  • 打赏
  • 举报
回复
public class LifeInOrder
{
static helperForSee staticone = new helperForSee("I'm static one");
helperForSee normalone = new helperForSee("I'm normal one");
static
{
System.out.println("I'm in static block");
}
{
System.out.println("I'm in normal block");
}

public LifeInOrder()
{
System.out.println("I'm in LifeInOrder Constructor");
}

public static void main(String[] args)
{
System.out.println("Hello World!");
new LifeInOrder();
}
}
class helperForSee
{
public helperForSee(String str)
{
System.out.println(str);
}
};

运行这个小示例,你就应该知道一个类初始化的顺序,你写的类违反了类的初始化规则! 你可以参照楼上几位的修改方法和意见!
redkey 2002-11-30
  • 打赏
  • 举报
回复
好像对类的概念不是很理解,类的内容是不允许出现执行语句的
fastmask 2002-11-29
  • 打赏
  • 举报
回复
修改如下:
class Test extends JFrame
{
Container contentPane = getContentPane();
JPanel p = new JPanel();
JButton b = new JButton("sdf");
public Test()
{
p.add(b);
contentPane.add(p,"Center");
}
public static void main(String[] args)
{
JFrame f = new Test();
f.show();
}
}
yuanhua123 2002-11-29
  • 打赏
  • 举报
回复
import java.awt.*;
import javax.swing.*;
public class Test extends JFrame
{
public Test()
{

}

Container contentPane = getContentPane();

JPanel p = new JPanel();

JButton b = new JButton("sdf");

{
contentPane.add(p,"Center");
p.add(b);
}


public static void main(String[] args) {
Test f = new Test();

f.show();
}
}
项目管理PMO 2002-11-29
  • 打赏
  • 举报
回复
类中只有成员变量和方法,不可以有方法调用。
alphazhao 2002-11-29
  • 打赏
  • 举报
回复
contentPane.add(p,"Center");

p.add(b);

你这两句代码位置放错了
怎么可以放在定义变量初始化的地方呢
调用、执行方法,其代码必须处于某个方法之内才行拉
将这两行代码移到某个方法内即可,改动如下:
import java.awt.*;
import javax.swing.*;
public class Test extends JFrame
{
public Test()
{

}

Container contentPane = getContentPane();


JPanel p = new JPanel();

JButton b = new JButton("sdf");

public void ss() {
contentPane.add(p,"Center");
p.add(b);
}

public static void main(String[] args) {
Test f = new Test();
f.ss();
f.show();
}}
dhf131 2002-11-29
  • 打赏
  • 举报
回复
方法要放在构造函数里面:

import java.awt.*;
import javax.swing.*;


public class Test extends JFrame
{
public Test()
{



Container contentPane = getContentPane();


JPanel p = new JPanel();
contentPane.add(p,"Center");

JButton b = new JButton("sdf");

p.add(b);
}
public static void main(String[] args)
{
JFrame f = new Test();
f.show();
}
}

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧