String  a ="abc";
String  b ="abc";
创建了几个对象?---------------------------
String  a = "www";
String  b = new String("www");
Test c = new Test();
创建了几个对象?

解决方案 »

  1.   

    String  a ="abc"; 
    String  b ="abc"; 
    创建了几个对象? 创建了两个对象。ab为对象的引用
      

  2.   

    创建了很多对象。
    如果只考虑String对象的话,
    String  a ="abc";
    String  b ="abc"; 
    只有一个,就是"abc".String  a = "www";
    String  b = new String("www");
    Test c = new Test();
    一个“www”String字符串常量对象,一个通过new创建的String对象,一个Test对象。区分对象和引用是首先要明白的。 
      

  3.   

    题目就有问题,如果问创建了几个对象的话真不好说。
    每个类都会对应Class对象,Class对象里还有其他的若干对象,递归计算。
      

  4.   

    String  a ="abc";
    String  b ="abc"; 
    一个对象。。a,b只是引用同一个对象。。
    用关键字new以后,新对象
    跟原来的没关系。。
      

  5.   

    String a ="abc";
    String b= "abc";
    Text c =new Text();
    是建了三个对象吗?
      

  6.   

    String  a ="abc"; 
    String  b ="abc"; 
    只有一个,就是"abc". 注意:假如是String  a ="abc";这种直接把字符串赋给一个引用,在执行这句话时,它首先寻找有没有创建一个"abc"的字符串,没有就建,有就直接引用就是了。所以a和b是共用一个对象。String  a = "www"; 
    String  b = new String("www"); 
    Test c = new Test(); 
    一个“www”String字符串常量对象,一个通过new创建的String对象,一个Test对象。 共三个.
      

  7.   

    开始只要区分引用和对象即可了,不用考虑太多。
    学多了自然就明白了,有兴趣就看点深入jvm之类的书,不懂也无所谓。
      

  8.   

    String  a ="abc"; 
    String  b ="abc"; 
    创建了一个对象--------------------------- 
    String  a = "www"; 
    String  b = new String("www"); 创建了二个对象