百思不得其解的一个问题

稻禾 2012-04-21 11:04:00

做一个计算器的练习写下如下代码,eclipse在添加MenuBar到最后每行都提示错误,都是这类的错误
Multiple markers at this line
- Syntax error on token "mb", VariableDeclaratorId expected after this
token
- Syntax error on token(s), misplaced construct(s)


而当写下主方法把CounterText 中的代码括起来时,错误就消失了,或者不写主方法,仅仅把CounterText 中的代码用一个大括号括起来,错误同样消失,请教各位这是怎么回事呢,这一个大括号起的什么作用呢?

import java.awt.Dimension;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;

public class CounterText {

JFrame frame = new JFrame("计算器");

JMenuBar mb = new JMenuBar();

JMenu m1 = new JMenu(" File");
JMenu m2 = new JMenu(" Save");

JMenuItem item1 = new JMenuItem("New");
JMenuItem item2 = new JMenuItem("hello");

frame.setJMenuBar(mb);

mb.add(m1);
mb.add(m2);

m1.add(item1);
m1.add(item2);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setSize(new Dimension(200, 300));
frame.setVisible(true);
}


...全文
361 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
天天来注册 2013-04-02
  • 打赏
  • 举报
回复
有用处 了解
稻禾 2012-04-22
  • 打赏
  • 举报
回复
小弟菜鸟,基础不扎实,如果让我想,怎么也想不到这,搜索也搜不到,第一次发帖,多谢各位高手的回复,解了对于我来说一个很大的疑问~~~~~
崔叫兽 2012-04-22
  • 打赏
  • 举报
回复
1L正解
爱摸鱼de老邪 2012-04-22
  • 打赏
  • 举报
回复
不用百思,Java程序设计的时的基本规定。
nmyangym 2012-04-21
  • 打赏
  • 举报
回复
简单的说,就是在类的声明变量区是不能出现独立的执行语句的。除非放在一对大括号里{}. 这样的一对大括号,叫代码块。(这样没有方法名的代码块,不是很多见)。

如下面的程序:
public class Test
{
Object obj;
Object obj1=new Object(); //声明同时赋值可以。
//System.out.println("Hello world"); //这句执行语句出现在这里就不对了。
{
System.out.println("Hello world"); //出现在这里也可以,此段代码没有方法名,
//是在初始化的时候执行,程序无法调用。
}
Test()
{
System.out.println("Hello world"); 出现在这里就可以。产生对象时执行。
}
display()
{
System.out.println("Hello world"); 出现在这里就可以。 供类的对象调用。
}
}
WayneXuan 2012-04-21
  • 打赏
  • 举报
回复

frame.setJMenuBar(mb);

mb.add(m1);
mb.add(m2);

m1.add(item1);
m1.add(item2);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setSize(new Dimension(200, 300));
frame.setVisible(true);

这些语句只能在方法中,不能直接写在类中,给它加上大括号后成为块代码就行了

62,616

社区成员

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

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