第一个表示定义了一个string 类的对象,并初始化为"Rose";
第二个表示定义了一个string 类的对象,没有初始化;
第三个我也不明白.

解决方案 »

  1.   

    String name = new String("Rose");   申明一个字符串变量,并副初值为roseString name = new String();         申明一个字符串变量,并副初值为空Sphere sphere = new Sphere(r);      不知道
      

  2.   

    查API,有的类的构造方法就可以带初值,有的不带
      

  3.   

    如果实现已经知道字符串变量的内容,就可以设初值。但有的时候你只是知道要用到一个字符串变量,但是还不知道要设什么值。那就只能先声明,然后等知道了值再付值!
    比如:
    String str = new String();
       ...
       ...
     [得到想要传给str的值:value]
       ...
       ...
      str = value;  
      

  4.   

    那是String类的几个构造方法,参数不同。
    String name = new String("Rose"); 
    申明一字符串变量,初值为rose
    String name = new String();         
    申明一字符串变量,初值为空
    Sphere sphere = new Sphere(r);      
    这个我也不知道。
      

  5.   

    Sphere sphere = new Sphere(r);      
    可能是自己写的一个CLASS,在这个程序里想把他实例化,因为这个CLASS的构造涵数需要一个参数,所以就带了参数R.
      

  6.   

    Sphere  我没有见过呵呵:)
    是不是自己定义的一个类啊:)String name = new String("Rose"); 定义了一个string 类的对象,并初始化为"Rose";
    String name = new String();       定义了一个string 类的对象,没有初始化;
    至于何时初始化值就看你定义的该变量你是否已经知道了它的值了。
      

  7.   

    String name=new String("Rose")和String name=new String();都是对name做为一个String类型做实例化,生成一个叫name的String类的对象,它们都拥有相同的成员方法,不同的是前者一个成员属性"Rose",而后都没有。注意和String name;不同,String name没有方法成员也没有属性,只是一个null值,如果试图调用其方法成员或对其属性值进行类型转换都是不可能的。
    Sphere sphere=new Sphere(r),快把大家搞糊涂了你,可能是ibm开发的web sphere里的吧。这个我也不知道。
      

  8.   

    第一个表示定义了一个string 类的对象name,并初始化为"Rose";
    第二个表示定义了一个string 类的对象name,但是没有初始化;
    第三个我也不明白是什么东东.