当前位置: 技术问答>java相关
can't resolve symbol,,,帮帮小弟我,,,
来源: 互联网 发布时间:2015-07-11
本文导语: 编译显示: D:javaExample.java:57: cannot resolve symbol symbol : variable button location: class Example if(source == button){ ^ D:javaExample.java:59: cannot resolve symbol symbol : variable label location: class Example...
编译显示:
D:javaExample.java:57: cannot resolve symbol
symbol : variable button
location: class Example
if(source == button){
^
D:javaExample.java:59: cannot resolve symbol
symbol : variable label
location: class Example
label.setText(" It is a example !");
^
2 errors
Process completed.
代码:
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Example extends Applet implements
ActionListener{ // #1
public static void main(String args[]){
Frame win=new Frame("Example");
Example example=new Example();
win.add("enter", example);
example.init(); // #2
win.setSize(600,360);
win.setVisible(true);
}
public void init(){ // #3
Button button;
Label label;
button=new Button(" OK ");
button.setBounds(280,200,100,20);
button.addActionListener(this);
label=new Label();
label.setBounds(260,100,200,20);
add(button);
add(label);
}
public void actionPerformed(ActionEvent e){
Object source=e.getSource();
if(source == button){
label.setText(" It is a example !");
}
}
}
D:javaExample.java:57: cannot resolve symbol
symbol : variable button
location: class Example
if(source == button){
^
D:javaExample.java:59: cannot resolve symbol
symbol : variable label
location: class Example
label.setText(" It is a example !");
^
2 errors
Process completed.
代码:
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Example extends Applet implements
ActionListener{ // #1
public static void main(String args[]){
Frame win=new Frame("Example");
Example example=new Example();
win.add("enter", example);
example.init(); // #2
win.setSize(600,360);
win.setVisible(true);
}
public void init(){ // #3
Button button;
Label label;
button=new Button(" OK ");
button.setBounds(280,200,100,20);
button.addActionListener(this);
label=new Label();
label.setBounds(260,100,200,20);
add(button);
add(label);
}
public void actionPerformed(ActionEvent e){
Object source=e.getSource();
if(source == button){
label.setText(" It is a example !");
}
}
}
|
"Button button;
Label label; "
应该在方法外声明,否则一个方法内的变量是不能被另一个方法识别的。
改为
"private Button button;
private Label label; "
Label label; "
应该在方法外声明,否则一个方法内的变量是不能被另一个方法识别的。
改为
"private Button button;
private Label label; "
|
Button button;
Label label;
两个变量是init方法的局部变量,所以离开了init我们就不能引用这些变量了,但是这里强调一点就是这些变量引用的对象还是可能存在的,这个好看具体的情况。
你这里的问题就是引用局部变量,但是局部变量只能在定义这个变量的方法中使用,所以你在public void actionPerformed(ActionEvent e)当然不行的。
这个问题太基本了。
Label label;
两个变量是init方法的局部变量,所以离开了init我们就不能引用这些变量了,但是这里强调一点就是这些变量引用的对象还是可能存在的,这个好看具体的情况。
你这里的问题就是引用局部变量,但是局部变量只能在定义这个变量的方法中使用,所以你在public void actionPerformed(ActionEvent e)当然不行的。
这个问题太基本了。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。