本程序在Freejava上调试!错误提示在相应的地方给出!希望大家能帮纠正下,谢谢
代码为:import java.awt.*;
import java.awt.event.*;
import java.io.* ;public class Student extends Frame
{
public Student()
{
this.addWindowListener (new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
System.exit(0);
}
});
}

private String no ;
private String name ;
private Char sex ;
private int age ;
private String class_no ;
private student chassmate[] = null ;

//读对象信息
public String toString()         
  {
    String s = "Name =" + name + "\n" ;
           s += "Age =" + age + "\n" ;
           s += "No =" + no + "\n" ;
           s += "Sex =" + sex + "\n" ;
           s += "Class_No =" + class_no + "\n" ;
    return s ;
  }
 
//更改年龄  
public int SetAge(int New_age)
  {
     age = New_age ;
  }
 
 //更改班号 
 public String SetClass_No(String NewClass_No)
   {
      class_no = NewClass_No ;
   }
 
 //构造函数  
 public Student(String no1 , String name1 , Char sex1 , int age1 , String class_no1  )
    {
       no = no1 ;
       name = name1 ;
       sex = sex1 ;
       age = age1 ;
       class_no = class_no1 ;
    }
    
public Student() ;

//增加一个学生
public void AddStudent(String no1 , String name1 , Char sex1 , int age1 , String class_no1)
    {
      for(int i=0 ; i<classmate.length ; i++)
         {
            if(classmate[i].no == no1 )
               { exit(1) ;}
         }  
                
      Sudent s = new Sudent(no1 , name1 , sex1 , age1 , class_no1) ; 
        classmate[classmate.length] = s ;          
   classmate.length += 1 ;
    }  
   
   //根据学生信息删除某个学生
   public void Delete_Student(String no1 , String name1 , Char sex1 , int age1 , String class_no1)
       {
          for(int i=0 ; i<classmate.length ; i++)
             {
               if(classmate[i].no == no1 && classmate[i].name == name1 && classmate[i].sex == sex1
                   && classmate[i].age == age1 && classmate[i].class_no == class_no1 )
                     { 
                        for(int j=i ; j<classmate.length ; j++)
                            {
                               classmate[j] = classmate[j+1] ;
                            }
                     }
              }
          classmate.length -- ;    
        }
    
    //将所有学生年龄增加一岁    
    public void Add_Age()
        {
           for(int i=0 ; i<classmate.length ; i++)
               classmate[i].age ++ ;
        }
    
    //将某个学生转到相应的班    
    public void Change_class(Student s , String class_no)
        {
           s.class_no = class_no1 ;
        }
    
    //输入班号,列出该班所有学生    
    public void Show_class()
        {
           System.out.print("请输入班号:") ;
           try{
                BufferedReader br = new BufferdeReader(new InputStreamReader(System.in)) ;
                String classno = br.readLine() ;
               }catch(IOException e){} ;
               
           for(int i=0 ; i<classmate.length ; i++)
              {
                 if(classmate[i].class_no == classno)
                    System.out.println("该学生的姓名为 :" + classmate[i].class_name ) ;
              }
         }
      
public static void main(String args[])
{  
   Student a = new Student a("08" , "yuu" , "男" , 21 , "计科(1)班") ; 
           //上面那行提示出错    AddStudent("09" , "langzi" , "男" , "22" , "计科(1)班") ;
   Show_class() ;
   
}
}

解决方案 »

  1.   

    a("08" , "yuu" , "男" , 21 , "计科(1)班") ; //a去掉
      

  2.   

    程序还是不行呀!!!
    还有N多错误!!Student.java:61: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
          for(int i=0 ; i<classmate.length ; i++)
                                  ^
    Student.java:63: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                if(classmate[i].no == no1 )
                           ^
    Student.java:64: cannot resolve symbol
    symbol  : method exit (int)
    location: class Student
                   { exit(1) ;}
                             ^
    Student.java:67: cannot resolve symbol
    symbol  : class Sudent 
    location: class Student
          Sudent s = new Sudent(no1 , name1 , sex1 , age1 , class_no1) ; 
                  ^
    Student.java:67: cannot resolve symbol
    symbol  : class Sudent 
    location: class Student
          Sudent s = new Sudent(no1 , name1 , sex1 , age1 , class_no1) ; 
                                 ^
    Student.java:68: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
            classmate[classmate.length] = s ;          
                    ^
    Student.java:68: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
            classmate[classmate.length] = s ;          
                              ^
    Student.java:69: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
       classmate.length += 1 ;
                       ^
    Student.java:75: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
              for(int i=0 ; i<classmate.length ; i++)
                              ^
    Student.java:77: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                   if(classmate[i].no == no1 && classmate[i].name == name1 && classmate[i].sex == sex1
                      ^
    Student.java:77: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                   if(classmate[i].no == no1 && classmate[i].name == name1 && classmate[i].sex == sex1
                                                ^
    Student.java:77: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                   if(classmate[i].no == no1 && classmate[i].name == name1 && classmate[i].sex == sex1
                                                                              ^
    Student.java:78: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                       && classmate[i].age == age1 && classmate[i].class_no == class_no1 )
                          ^
    Student.java:78: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                       && classmate[i].age == age1 && classmate[i].class_no == class_no1 )
                                                      ^
    Student.java:80: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                            for(int j=i ; j<classmate.length ; j++)
                                            ^
    Student.java:82: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                                   classmate[j] = classmate[j+1] ;
                                   ^
    Student.java:82: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                                   classmate[j] = classmate[j+1] ;
                                                  ^
    Student.java:86: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
              classmate.length -- ;    
              ^
    Student.java:92: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
               for(int i=0 ; i<classmate.length ; i++)
                               ^
    Student.java:93: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                   classmate[i].age ++ ;
                   ^
    Student.java:107: cannot resolve symbol
    symbol  : class BufferdeReader 
    location: class Student
                    BufferedReader br = new BufferdeReader(new InputStreamReader(System.in)) ;
                                            ^
    Student.java:111: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
               for(int i=0 ; i<classmate.length ; i++)
                               ^
    Student.java:113: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                     if(classmate[i].class_no == classno)
                        ^
    Student.java:113: cannot resolve symbol
    symbol  : variable classno 
    location: class Student
                     if(classmate[i].class_no == classno)
                                                 ^
    Student.java:114: cannot resolve symbol
    symbol  : variable classmate 
    location: class Student
                        System.out.println("该学生的姓名为 :" + classmate[i].class_name ) ;
                                                         ^
    Student.java:122: cannot resolve symbol
    symbol  : constructor Student (java.lang.String,java.lang.String,java.lang.String,int,java.lang.String)
    location: class Student
       Student a = new Student ("08" , "yuu" , "男" , 21 , "计科(1)班") ;
                           ^
    Student.java:123: AddStudent(java.lang.String,java.lang.String,char,int,java.lang.String) in Student cannot be applied to (java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)
       AddStudent("09" , "langzi" , "男" , "22" , "计科(1)班") ;
               ^
    Student.java:124: non-static method Show_class() cannot be referenced from a static context
       Show_class() ;
               ^
    28 errors
    Exit code: 1
    There were errors这是怎么回事呀?怎么很多都错在classmate.length上,这里有什么问题吗?
      

  3.   

    哦!
    上面的classmate写成了chassmate,不过改后还有错误,提示为:Student.java:64: cannot resolve symbol
    symbol  : method exit (int)
    location: class Student
                   { exit(1) ;}
                             ^
    Student.java:67: cannot resolve symbol
    symbol  : class Sudent 
    location: class Student
          Sudent s = new Sudent(no1 , name1 , sex1 , age1 , class_no1) ; 
                  ^
    Student.java:67: cannot resolve symbol
    symbol  : class Sudent 
    location: class Student
          Sudent s = new Sudent(no1 , name1 , sex1 , age1 , class_no1) ; 
                                 ^
    Student.java:69: cannot assign a value to final variable length
       classmate.length += 1 ;
                                ^
    Student.java:86: cannot assign a value to final variable length
              classmate.length -- ;    
                       ^
    Student.java:107: cannot resolve symbol
    symbol  : class BufferdeReader 
    location: class Student
                    BufferedReader br = new BufferdeReader(new InputStreamReader(System.in)) ;
                                            ^
    Student.java:113: cannot resolve symbol
    symbol  : variable classno 
    location: class Student
                     if(classmate[i].class_no == classno)
                                                 ^
    Student.java:114: cannot resolve symbol
    symbol  : variable class_name 
    location: class Student
                        System.out.println("该学生的姓名为 :" + classmate[i].class_name ) ;
                                                                  ^
    Student.java:122: cannot resolve symbol
    symbol  : constructor Student (java.lang.String,java.lang.String,java.lang.String,int,java.lang.String)
    location: class Student
       Student a = new Student ("08" , "yuu" , "男" , 21 , "计科(1)班") ;
                           ^
    Student.java:123: AddStudent(java.lang.String,java.lang.String,char,int,java.lang.String) in Student cannot be applied to (java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)
       AddStudent("09" , "langzi" , "男" , "22" , "计科(1)班") ;
               ^
    Student.java:124: non-static method Show_class() cannot be referenced from a static context
       Show_class() ;
               ^
    11 errors
    Exit code: 1
    There were errors
      

  4.   

    你写错好多东西, class Sudent
      

  5.   

    该后最后就剩下这些错误了,实在找不到了!!!
    大家帮帮忙好吗?实在找不到了!!!Student.java:113: cannot resolve symbol
    symbol  : variable classno 
    location: class Student
                     if(classmate[i].class_no == classno)
                                                 ^
    Student.java:114: cannot resolve symbol
    symbol  : variable class_name 
    location: class Student
                        System.out.print("该学生的姓名为 :" + classmate[i].class_name ) ;
                                                                ^
    Student.java:122: cannot resolve symbol
    symbol  : constructor Student (java.lang.String,java.lang.String,java.lang.String,int,java.lang.String)
    location: class Student
       Student a = new Student ("08" , "yuu" , "男" , 21 , "计科(1)班") ;
                           ^
    Student.java:123: AddStudent(java.lang.String,java.lang.String,char,int,java.lang.String) in Student cannot be applied to (java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)
       AddStudent("09" , "langzi" , "男" , "22" , "计科(1)班") ;
               ^
    Student.java:124: non-static method Show_class() cannot be referenced from a static context
       Show_class() ;
               ^
    5 errors
    Exit code: 1
    There were errors
      

  6.   

    最后剩下了一下了!!!symbol  : variable class_name 
    location: class Student
                        System.out.println("该学生的姓名为 :" + classmate[i].class_name ) ;请问这是为什么呀????
                                                                  ^
      

  7.   

    这是你开始定义的private student chassmate[] = null ;
    后边都是classmate,拼写错误
      

  8.   

    哦!
    不好意思,那都改了!!!
    现在的源程序代码是这样:import java.awt.*;
    import java.awt.event.*;
    import java.io.* ;public class Student extends Frame
    {
    public Student()
    {
    this.addWindowListener (new WindowAdapter(){
    public void windowClosing(WindowEvent e){
    dispose();
    System.exit(0);
    }
    });
    }

    private String no ;
    private String name ;
    private String sex ;
    private int age ;
    private String class_no ;
    private Student[] classmate = null ;

    //读对象信息
    public String toString()         
      {
        String s = "Name =" + name + "\n" ;
               s += "Age =" + age + "\n" ;
               s += "No =" + no + "\n" ;
               s += "Sex =" + sex + "\n" ;
               s += "Class_No =" + class_no + "\n" ;
        return s ;
      }
     
    //更改年龄  
    public int SetAge(int New_age)
      {
         age = New_age ;
      }
     
     //更改班号 
     public String SetClass_No(String NewClass_No)
       {
          class_no = NewClass_No ;
       }
     
     //构造函数  
     public Student(String no1 , String name1 , String sex1 , int age1 , String class_no1  )
        {
           no = no1 ;
           name = name1 ;
           sex = sex1 ;
           age = age1 ;
           class_no = class_no1 ;
        }
         

    //增加一个学生
    public void AddStudent(String no1 , String name1 , String sex1 , int age1 , String class_no1)
        {
          for(int i=0 ; i<classmate.length ; i++)
             {
                if(classmate[i].no == no1 )
                   {
                      System.out.println("该学生已经存在,请确认你的输入是否正确!") ;
                   }   
             }  
                    
          Student s = new Student(no1 , name1 , sex1 , age1 , class_no1) ; 
          classmate[classmate.length] = s ;          
        }  
       
       //根据学生信息删除某个学生
       public void Delete_Student(String no1 , String name1 , String sex1 , int age1 , String class_no1)
           {
              for(int i=0 ; i<classmate.length ; i++)
                 {
                   if(classmate[i].no == no1 && classmate[i].name == name1 && classmate[i].sex == sex1
                       && classmate[i].age == age1 && classmate[i].class_no == class_no1 )
                         { 
                            for(int j=i ; j<classmate.length ; j++)
                                {
                                   classmate[j] = classmate[j+1] ;
                                }
                         }
                  }  
            }
        
        //将所有学生年龄增加一岁    
        public void Add_Age()
            {
               for(int i=0 ; i<classmate.length ; i++)
                   classmate[i].age ++ ;
            }
        
        //将某个学生转到相应的班    
        public void Change_class(Student s , String class_no1)
            {
               s.class_no = class_no1 ;
            }
        
        //输入班号,列出该班所有学生    
        public void Show_class()
            {
               String classno ;
               System.out.print("请输入班号:") ;
               try{
                    BufferedReader br = new BufferedReader(new InputStreamReader(System.in)) ;
                    classno = br.readLine() ;
                   }catch(IOException e){} ;
                   
               for(int i=0 ; i<classmate.length ; i++)
                  {
                     if(classmate[i].class_no == classno)
                        System.out.println("该学生的姓名为 :" + classmate[i].class_name ) ;
                  }
             }
          
    public static void main(String args[])
    {  
       Student s = new Student("08" , "yuu" , "男" , 21 , "计科(1)班") ;
    //    AddStudent("09" , "langzi" , "男" , "22" , "计科(1)班") ;
       s.Show_class() ;
       
    }
    }
    最后剩下了一下错误了!!!symbol  : variable class_name 
    location: class Student
                        System.out.println("该学生的姓名为 :" + classmate[i].class_name ) ;请问这是为什么呀????
      

  9.   

    怎么改成这样还错呢??
    大家帮帮看看呀!!!!初学者呀,还请大家赐教!!import java.awt.*;
    import java.awt.event.*;
    import java.io.* ;public class Student extends Frame
    {
    public Student()
    {
    this.addWindowListener (new WindowAdapter(){
    public void windowClosing(WindowEvent e){
    dispose();
    System.exit(0);
    }
    });
    }

    private String no ;
    private String name ;
    private String sex ;
    private int age ;
    private String class_no ;
    private Student[] classmate = null ;

    //读对象信息
    public String toString()         
      {
        String s = "Name =" + name + "\n" ;
               s += "Age =" + age + "\n" ;
               s += "No =" + no + "\n" ;
               s += "Sex =" + sex + "\n" ;
               s += "Class_No =" + class_no + "\n" ;
        return s ;
      }
     
    //更改年龄  
    public void SetAge(int New_age)
      {
         age = New_age ;
      }
     
     //更改班号 
     public void SetClass_No(String NewClass_No)
       {
          class_no = NewClass_No ;
       }
     
     //构造函数  
     public Student(String no1 , String name1 , String sex1 , int age1 , String class_no1  )
        {
           no = no1 ;
           name = name1 ;
           sex = sex1 ;
           age = age1 ;
           class_no = class_no1 ;
        }
         

    //增加一个学生
    public void AddStudent(String no1 , String name1 , String sex1 , int age1 , String class_no1)
        {
          for(int i=0 ; i<classmate.length ; i++)
             {
                if(classmate[i].no == no1 )
                   {
                      System.out.println("该学生已经存在,请确认你的输入是否正确!") ;
                   }   
             }  
                    
          Student s = new Student(no1 , name1 , sex1 , age1 , class_no1) ; 
          classmate[classmate.length] = s ;          
        }  
       
       //根据学生信息删除某个学生
       public void Delete_Student(String no1 , String name1 , String sex1 , int age1 , String class_no1)
           {
              for(int i=0 ; i<classmate.length ; i++)
                 {
                   if(classmate[i].no == no1 && classmate[i].name == name1 && classmate[i].sex == sex1
                       && classmate[i].age == age1 && classmate[i].class_no == class_no1 )
                         {  if(classmate.length <= 1)
                                {
                                   no = "" ;
                                   name = "" ;
                                   sex = "" ;
                                   age = 0 ;
                                   class_no = "" ;
                                 }
                             else 
                                 {        
                                    for(int j=i ; j<classmate.length ; j++)
                                      {
                                         classmate[j] = classmate[j+1] ;
                                      }
                                 }     
                         }
                  }  
            }
        
        //将所有学生年龄增加一岁    
        public void Add_Age()
            {
               for(int i=0 ; i<classmate.length ; i++)
                   classmate[i].age ++ ;
            }
        
        //将某个学生转到相应的班    
        public void Change_class(Student s , String class_no1)
            {
               s.class_no = class_no1 ;
            }
        
        //输入班号,列出该班所有学生    
        public void Show_class()
            {
               String classno = "" ;
               System.out.print("请输入班号:") ;
               try{
                    BufferedReader br = new BufferedReader(new InputStreamReader(System.in)) ;
                    classno = br.readLine() ;
                   }catch(IOException e){} ;
                   
               for(int i=0 ; i<classmate.length ; i++)
                  {
                     if(classmate[i].class_no == classno) 
                        System.out.println("该学生的姓名为 :" + classmate[i].name ) ;
                     else
                        System.out.println("没有你要找的人,请确认你的输入正确与否!") ;
                  }
             }
          
    public static void main(String args[])
    {  
       Student s = new Student("08" , "yuu" , "男" , 21 , "计科(1)班") ;
       s.AddStudent("09" , "langzi" , "男" , "22" , "计科(1)班") ; //这两行
       s.DeleteStudent("08" , "yuu" , "男" , 21 , "计科(1)班") ;   //怎么错了
       s.Show_class() ;
       
    }
    }如果注释掉那两行,可以运行,但是运行后有错误,大家看看是不是数组越界了???
    谢谢大家了?
      

  10.   

    if(classmate[i].class_no == classno) 
    字符串比较不能用== 应该用equals()
    看看运行怎么样
      

  11.   

    public static void main(String args[])
    {  
       Student s = new Student("08" , "yuu" , "男" , 21 , "计科(1)班") ;
       s.AddStudent("09" , "langzi" , "男" , "22" , "计科(1)班") ; //这两行
       s.DeleteStudent("08" , "yuu" , "男" , 21 , "计科(1)班") ;   //怎么错了
       s.Show_class() ;
       
    }AddStudent()方法的第4个参数"22"应该是整型的22,不是字符串
    DeleteStudent()方法应该为Delete_Student()