你想想所有原子类型包括 int double 也都是继承自Object的类,没有实例化后怎么能用呢?

解决方案 »

  1.   

    没有初始化变量。
       int totalcredit = 0;
       double  gpa = 0;
      

  2.   

    对局部变量,在用之前都要初始化:
    如int等primitive的,要写为int i =0;(反正要给个值)
    对String等Class的,要写为String str= null;或者 new String("");
      

  3.   

    在constructrue()和block中可以自动初始化。
    String aString = "value";(好像没错):)
      

  4.   

    形参要初始化的。原类型要给个值,其他要为null先。
      

  5.   

    局部变量用前必须初始化,类的成员变可以不初始化,因为java编译器会自动赋值,object 类型的=null,primitive type 中数值类型为0 char 为空字符(''),boolean 为 false。
      

  6.   

    "形参要初始化的。原类型要给个值,其他要为null先。"
    讨教一下这个理论从何而来?
    的确看到许多书上的代码是如此处理,深意何在?
    详谈之!
      

  7.   

    局部变量用前必须初始化,类的成员变可以不初始化,java编译器会依据类型自动初始化,因为你在main中定义属于局部变量要初始化
    class a{
      private int a;//这种情况可以不必初始化
    }