我在使用line this.add(p)
时遇到了一些麻烦。我得到一个错误,说'不能在静态上下文中使用它' - 是的,这是一个非常简单的问题,但有人可以解释为什么那行不起作用和静态模式?
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.JLabel;
import javax.swing.JButton;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
public class LeapYear {
public static void main(String[] args) {
int nmbr;
nmbr = Integer.valueOf(JOptionPane.showInputDialog("enter any year"));
{
}
if (nmbr>0 && 4%nmbr==0) {
JPanel panel = new JPanel();
panel.add(new JLabel("Name"));
panel.add(new JTextField(20));
JButton start = new JButton();
start.add(new JButton("Start"));
panel.setBackground(Color.YELLOW);
this.add(panel);
panel.setOpaque(false);
}
if ((nmbr % 5) == 0) {
System.out.print(nmbr + " is not multiple of 5.");
}
}
}
(是的,我知道我已经导入了许多Swings,我只是在看我可以导入的东西。) 新编码员能够理解的答案将不胜感激!感谢
答案 0 :(得分:2)
它们是关键字,指的是类的实例。在静态上下文中,您没有实例,因此您无法引用它。
点击此链接,详细了解“this”关键字:What is the meaning of "this" in Java?