0

label在下面的代码示例中,我应该给变量 , 什么修饰符?我是 Java 新手,但我想做的第一件事是分解出我可以在 swing 中使用的所有类,如 JLabel 并制作它,以便我可以动态调用它们。我希望我在下面做到了。但是,是的,我不确定,private static JLabel label;因为最终我希望能够在某个主文件中声明所有的 Swing 类。谢谢。

package base;

import java.awt.Component;

import javax.swing.JFrame;
import javax.swing.JLabel;

public class CreateLabel extends JLabel {
    private static final long serialVersionUID = 1L;
    private static JLabel label;

    public Component createLabel(JFrame frame, String text) {
        label = new JLabel(text);
        return frame.getContentPane().add(label);
    }
}
4

1 回答 1

2

我的理解是,您希望您的createLabel()方法添加一个JLabel到传递的JFrame. 你可以做的是:

public class LabelCreator /*extends JLabel*/ {
    /*private static final long serialVersionUID = 1L;*/
    /*private static JLabel label;*/

    public Component createLabel(JFrame frame, String text) {
        JLabel label = new JLabel(text);
        return frame/*.getContentPane()*/.add(label);
    }
}

请注意更改类名以尊重命名约定。

于 2012-07-20T03:11:53.350 回答