我在JButton
中收到了一些JLabel
,JTextField
和class
。
我只需在panel.add()方法中对它们进行初始化,然后在每个方法附近发出The value of the field 'nameOfField' is not used
警告。
我的课程:
public class GuiClass
{
private JFrame frame;
private JButton button1;
private JButton button2;
private JLabel label;
private JTextField textField;
private JPanel upperPanel;
private JPanel lowerPanel;
public GuiClass()
{
this.frame = new JFrame("Complex layout GUI example");
this.upperPanel = new JPanel();
this.lowerPanel = new JPanel();
this.upperPanel.add(this.label = new JLabel("Enter your password:"));
this.upperPanel.add(this.textField = new JTextField(20)); // Size of the textField
this.lowerPanel.add(this.button1 = new JButton("Cancel"));
this.lowerPanel.add(this.button2 = new JButton("Login"));
this.frame.setLayout(new GridLayout(2,1));
this.frame.add(this.upperPanel);
this.frame.add(this.lowerPanel);
this.frame.pack();
this.frame.setVisible(true);
}
}
警告靠近button1,button2,label和textField。
我正在使用Eclipse
。有什么困扰呢?
PS
我可以生成getter和setter,并且警告显然已经消失但是我想从中学习Java编程我的错误是什么(如果有的话)。
感谢。
答案 0 :(得分:2)
private JFrame frame;
private JButton button1;
private JButton button2;
private JLabel label; //All Fields are private
private JTextField textField;
private JPanel upperPanel;
private JPanel lowerPanel;
此处所有
refrence
变量都是private
。这意味着所有成员变量都具有此Class
的范围。因此,您应该在此类中使用所有这些refrence variables
。 否则eclipse
会显示警告。但是,这些警告不是错误,但有些IDE
eclipse
和Intelli j Idea
这样的聪明variables
会警告您是否已宣布任何未使用的getters
。
现在谈到你的第二个论点。这是
生成getter&setter&和警告显然已经消失了?
如果您生成setters
和public
。它们具有variable
修饰符,这意味着您可以将set
在课外使用get
或variables
成员Warning
的值。因此,它不会引发任何eclipse
,因为Class
意识到这些成员变量可能会在<body>
<div id="wrapper">
{% block sidebar %}
{% embed 'Bundle::sidebar.html.twig' %}{% endembed %}
{% endblock %}
</div>
</body>
之外使用。
谢谢。