public class Subjects {
  Subject subs[][]=new Subject[7][8];
   public Subjects() {
    for(int i=0;i<=6;i++)
      for(int j=0;j<=7;j++)
        subs[i][j]=new Subject();
  }}
///////////////////////////////////////////////////////////
class Subject
{
  String name;
  String classroom;
  public Subject()
  {
    name="暂无课程";
    classroom="000教室";
  }
 }
主程序中用这个类产生对象
Subjects sj=new Subjects();
可以运行,但是在单步调试的对话框中如果监视这个对象的内容,一点这个对象,就出现提示信息:
Signature cmd: exception java.lang.Exception: Couldn't get ClassFile object for signature cmd
对象中的二维数组显示:ObjectCollectException 
大家帮忙调试一下.

解决方案 »

  1.   

    经过调试,我发现一个奇怪的现象:
    上面的异常可以避免,只需要主程序中多两行程序:
        Subject sub[]=new Subject[2];
        sub[1]=new Subject();
     然后再在主程序中用这个类产生对象
       Subjects sj=new Subjects();
    就可以在调试的时候正确观察sj对象的内容,实在搞不懂这联两行代码和下面的对象有什么联系,从语法上讲程序没有任何问题,运行也正确,就是调试的时候异常.到底是代码的问题还是jbuilder本身的问题?