public class Test {
TestSub ts = new TestSub();
ts.i++;
}class TestSub {
int i;
}

解决方案 »

  1.   

    TestSub ts = new TestSub();
    ts.i++;
    放到方法里就没问题了或者ts.i++赋值给一个成员变量;
    int t = ts.i++;
      

  2.   


    public class Test { //???这个有问题
        TestSub ts = new TestSub();
        ts.i++;
    }public class Test 这个有问题,没主函数
      

  3.   

    我还是不懂没MAIN为什么就错了呢?
      

  4.   

    明白了 
    类中分两个区 
    1)数据成员
    2)方法
    若这样写
    public class Test {
        TestSub ts = new TestSub();
        ts.i++;
    }
    会把
    TestSub ts = new TestSub();
        ts.i++;
    当作数据成员来处理
    但是 i 没定义,所以错了
      

  5.   

    ts.i++是什么?
    ts.i++的结果是个整数

    class A{
       1 ;
    }
    是一个效果,这里只写一个1能行吗?
      

  6.   

    java虚拟机先调用main方法,没有main方法,它找谁去,谁也找不到,什么也加载不到内存!!!
      

  7.   

    ts.i++ 不是把自己付给自己了吗?
      

  8.   

    main 方法只是程序执行时的入口没有main是可以编译的 
      

  9.   


    这么理解那么 int j = ts.i++; 为什么就对了 这里的i就定义了?
      

  10.   


    因为此时 j 是数据成员啊
    只有ts.i++的话,那他算什么啊?成员?方法?都不是
      

  11.   

    那我这么写
    public class Test {
    TestSub ts = new TestSub();
    ts.i = ts.i + 1;
    }class TestSub {
    int i;
    }
    不是和那一样嘛?也错
      

  12.   


    赋值表达式 左边必须是变量啊 ts.i 是数值  肯定错啊
      

  13.   


    public class Test {
    public static void main(String[] args) {
    TestSub ts = new TestSub();
    ts.i = ts.i + 1;
    }

    }class TestSub {
    int i;
    }那这样为什么对啊?
      

  14.   

    ts.i++;只是一次计算 并未赋给任何变量
    一个类由 属性和方法组成 
    这样写就是不合规范 不是吗?
      

  15.   

    ts.i=ts.i+1;对象.实例变量 使用“.“运算符访问成员变量
    类包括属性和方法
    Java要求在使用一个变量之前要对变量的类型加以声明。
    ts.i=ts.i+1;写在方法外面,不符合变量声明的语法规则
      

  16.   

    public class Test {
        TestSub ts = new TestSub();
        ts.i++;
    }class TestSub {
        int i;
    }
     TestSub ts = new TestSub();
        ts.i++;
    这个类的实例化 及调用TestSub中的全局变量i  则要把这两句代码写在主方法里面  这样才可以
    int i;  这是全局变量  全局变量整型的初始值是0如果 TestSub ts = new TestSub();
        ts.i++;
    放在主方法里面 输出ts.i++ 则会等于0
      

  17.   

    不知道怎么说,ts.i是一个数值。
    例如:
    public class Test{
          1;
    }
    这样可以吗?你写的就是和这一个道理!
      

  18.   

    楼上说的正是我要说的 !这相当于成员变量 你并没有指定其类型 又没有main方法 当然报错了
      

  19.   

    ts.i++;
    是语句,不是变量声明和初始化,不能放在类一级!如果想用,应该用
    public class Test {
      TestSub ts = new TestSub();
      {
        ts.i++;
      }
    }class TestSub {
      int i;
    }