非静态变量参考误差 [英] Non-static variable reference error
本文介绍了非静态变量参考误差的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
有人可以帮我解决程序中的以下错误吗?
testThread.java:98:不能从静态上下文引用非静态变量lb1
lb1.add(String.valueOf(lower));
这是我的程序:
Hi,
Can anybody please help me to fix the following error in my program.
testThread.java:98: non-static variable lb1 cannot be referenced from a static context
lb1.add(String.valueOf(lower));
This is my program:
import java.io.*;
import java.lang.*;
import java.awt.*;
import java.awt.event.*;
class testThread extends Frame implements ActionListener,Runnable
{
int lower,upper;
Label l1=new Label("ODD");
Label l2=new Label("EVEN");
List lb1=new List();
List lb2=new List();
Button b2=new Button("EXIT");
void test(int low,int up)
{
lower = low;
upper = up;
setLayout(new FlowLayout());
setSize(700,700);
setTitle("Thread Demo");
setVisible(true);
add(l1);add(lb1);add(l2);add(lb2);add(b2);
b2.addActionListener(this);
Thread t=new Thread(this);
t.start();
addWindowListener(
new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{ System.exit(0); }
}
);
}
public void actionPerformed(ActionEvent ae)
{
if(ae.getSource()==b2)
System.exit(0);
}
public void run()
{
try
{
if((lower % 2) != 0)
{
lower = lower + 1;
}
while(lower <= upper)
{
Thread.sleep(1000);
lb2.add(String.valueOf(lower));
lower += 2;
Thread.sleep(500);
}
}catch(Exception e){}
}
public static void main(String[] args)
{
testThread obj=new testThread();
int lower,upper;
lower = Integer.parseInt(args[0]);
upper = Integer.parseInt(args[1]);
obj.test(lower,upper);
if((lower % 2) == 0)
{
lower = lower + 1;
}
try
{
while(lower <= upper)
{
Thread.sleep(1000);
lb1.add(String.valueOf(lower));
lower = lower + 2;
Thread.sleep(500);
}
}
catch(Exception e){}
}
推荐答案
好吧,错误消息说明了一切.
可能您需要更改行
Well, the error message says it all.
Probably you need to change the line
vidhyaej写道:
vidhyaej wrote:
lb1.add(String.valueOf(lower));
lb1.add(String.valueOf(lower));
至:
to:
obj.lb1.add(String.valueOf(lower));
请注意, l1,l2,lb1,lb1 确实是变量的较差名称.
:)
As a side note, l1,l2,lb1,lb1 are really poor names for variables.
:)
这篇关于非静态变量参考误差的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文