一个java文件里只有一个pbulic类public class Cal extends JFrame  改为:
class Cal extends JFrame我记得大概是这样,具体的你再查查书。

解决方案 »

  1.   

    JButton b[] = new JButton[names.length];b[i]=new JButton( names[i] );
      

  2.   

    JButton b[]没有初始化
    ...
           c.setLayout(layout);
    b = new JButton[names.length];//加上这一句
           for(int i=0;i<names.length;i++){
    ...
      

  3.   


       public static void main(String[] args)
       {
          Cal app=new Cal();
          
          app.addWindowListener(new WindowAdapter(){
              public void windowClosing(WindowEvent e){
                 System.exit(0);
              }
           }
        );     <-这里多了一个";"
      

  4.   

    //我在修改的地方加了 //**
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;public class Cal extends JFrame{
       private JButton b[];
       private String names[]=
       {"7","8","9","/","4","5","6","*"
    ,"1","2","3","-","0",".","=","+"};
       private GridLayout layout;
       
       public Cal()
       {
           super("calculator");
           layout=new GridLayout(4,4);
           Container c=getContentPane();
           c.setLayout(layout);
        
       b=new JButton[names.length]; //**
       
           for(int i=0;i<names.length;i++){
                b[i]=new JButton( names[i] );
                c.add(b[i]);
           }
           setSize(300,400);  
           show();
       }    
           
       public static void main(String[] args)
       {
          Cal app=new Cal();
          
          app.addWindowListener(new WindowAdapter(){
              public void windowClosing(WindowEvent e){
                 System.exit(0);
              }
           }
        );
      }
    }   
      

  5.   

    谢谢大家了 问题已经解决了 
    b=new JButton[names.length]; 这一行如果写成b[]=new JButton[names.length];就不行了 为什么啊 ???? 我申明的是JButton b[];可实例话的时候怎么是
    b=new JButton[names.length];????????