String类

来源:互联网 发布:对网络教育的看法 编辑:程序博客网 时间:2024/06/09 20:13

1.equals(Object anObject)方法:定义在Object类中,因此java中的每个类都具有该方法

      1)对于Object类的equal()方法来说,它是用来判断调用equal()方法的引用与传进来的引用是否指向同一个对象。对于Object类来说,他等价于==。

  

      2)对于String类中的equals()方法来说,它是判断当前字符串与传进来的字符串的内容是否一致。(因为String类重写了equals()方法)。

2.对于String对象的相等性判断来说,请使用equals()方法。

3,String是常量,对象一旦创建就无法改变,当使用+拼接字符串时,会生成新的字符串对象,而不是向原有的Sting对象追加内容。

4.String s="aaa"(采用字面值方式赋值)查找String pool中是否存在“aaa”这个对象

      1)如果不存在,则在String pool中创建“aaa”对象,然后将String pool中的这个“aaa”对象的地址返回来,赋值给s。这样s就指向了String pool中的“aaa”对象了。

      2)如果String pool中存在“aaa”对象,则不会再String pool中再创建对象“aaa”,而是直接把“aaa”对象的引用赋值给s。

   5.String s=newString("aaa");(new创建的对象都是在堆中,并且每个对象的引用都不一样,即使字面值是一样的)

   首先在String pool中查找有没有“aaa”这个字符串对象

      1)如果有,则不再在String pool中创建对象“aaa”,而是在堆中创建“aaa”对象,然后将“aaa”对象的引用返回赋值给s。

  

      2)如果没有,则将在String pool中创建对象“aaa”,并且会在堆中创建对象“aaa”,然后将“aaa”对象的引用返回赋值给s。


学习圣思园-张龙老师Java SE后整理笔记

0 0
原创粉丝点击