import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
class CheckBoxTest extends JFrame
{
CheckBoxTest(String s)
{
super(s);
this.setSize(300, 300);
this.setLocation(100, 100);
this.setVisible(true);
JCheckBox jcb=new JCheckBox("苹果");
this.validate();
this.add(jcb);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class JCheckBox
{
public static void main(String[] args)
{
CheckBoxTest cbt=new CheckBoxTest("单选框");
}
}在运行上面的代码时,在命令提示符下总是提示:
 cannot find symbol
symbol  : constructor JCheckBox(java.lang.String)
location: class JCheckBox
                JCheckBox jcb=new JCheckBox("苹果");
                              ^
请教是什么原因?

解决方案 »

  1.   

    因为你没去创造一个"constructor JCheckBox(String text)"。
      

  2.   


    import javax.swing.*;
    import java.awt.event.*;class CheckBoxTest extends JFrame {
    CheckBoxTest(String s) {
    super(s);
    this.setSize(300, 300);
    this.setLocation(100, 100);
    this.setVisible(true);
    JCheckBox jcb = new JCheckBox("苹果");
    this.validate();
    this.add(jcb);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    }public class JCheckBox1 {

    public static void main(String[] args) {
    CheckBoxTest cbt = new CheckBoxTest("单选框");
    }
    }
    你是不是要这样的   因为你JCheckBox这个类名起的和复选框的名字一样了   你再JCheckBox jcb = new JCheckBox("苹果");
    这句的时候  他会先用类中定义的JCheckBox   但是这个类没有这样的构造方法  所以报错了   改下名字就好了