在java中;        public  class Show{
public static void main(String[] args)
{
String name;
                                 //name="fff";
                                System.out.println(name);
}

}在我对name 进行定义,然后单独另起一行,再对name 进行赋值,就会报错。假如String name='fff';这样赋值就不会报错,为什么呢?

解决方案 »

  1.   

    我没看出来有什么问题,反而是你String name='';这句是有错的吧
      

  2.   

    public  class Show{
    public static void main(String[] args)
    {
    A a=new A();
    a.speak();
    }

    }class A extends B {
    String name;
    name="fff";
    void speak(){

    System.out.println(name+age);

    }
    }class B{
    int age=30;}
      

  3.   

    对String变量要初始化的,如:String name = null;
    C/C++中可以像你说的那样先定义变量再赋值,但这会产生“野指针”。java就不一样了,在定义变量的同时进行初始化,会安全些