java深入解析-第3章 String类

原创 2015年07月07日 14:29:30

1、如果是在循环中对String对象进行连接,应该直接使用StringBuilder代替String的”+”连接,这样可以提高性能。
2、对于编译时常量,在编译后直接计算出字符串的值,而不会再运行时创建临时的StringBuilder对象来完成字符串连接。
3、String对象是不可变的。因为String类是final类型的,我们无法继承该类。
4、String类那些看似修改字符序列的方法实际上都是返回新创建的String对象,而不是修改自身对象。
5、由于String对象是不可改变的,因此其具有线程安全性,可以自由地实现共享。
6、在String类内部,是使用一个字符数组(char[])来维护字符序列的。
7、从Object类继承的equals方法与“==”运算符的比较方式是相同的。如果继承的equals方法对我们自定义的类不适用,则可以重写equals方法。
8、equals有五条规则:

  • 自发性
  • 对称性
  • 传递性
  • 一致性
  • 对于任何非空引用值x,x.equals(null)应返回false。
    在重写时必须遵守这五条规则,否则该类与其他类交互时,会发生错误。

9、在重写equlas时,必须也要重写hashCode方法。
10、String s1=new String(“abc”);和String s2=”abc”;是不一样处理方式的。后者如果有s3=”abc”,s2==s3是true。
11、当String对象调用intern方法时,如果常量池中已经含有该对象(通过equals方法来判断),则返回常量池中的String对象。如果不存在,则将该对象加入常量池中,并返回该对象。
12、程序中出现String编译时常量(String字面常量与String常量表达式)时,会自动调用intern放安抚。然而运行时创建的String对象,会分配到堆中。

版权声明:

相关文章推荐

第3章 垃圾收集器与内存分配策略--《深入理解 Java 虚拟机》笔记

垃圾回收器(Garbage Collection,GC)。 三件事: 哪些内存需要回收? 什么时候回收? 如何回收? 程序计数器、虚拟机栈、本地方法栈三个区域随线程而生,随线...

《深入理解Java虚拟机》读书笔记(3)---第3章 垃圾收集器与内存分配策略(二)

3.4 垃圾收集器   垃圾收集器是内存回收的具体实现。因为Java虚拟机规范中对垃圾收集器应该如何实现没有任何规定,因此不同厂商、版本的虚拟机垃圾收集器实现可能会有很大的差别。下面介绍7种作用...

Head First Java第3章练习“我是编译器”——Hobbits类

原题附上:(为了规范略做改动) class Hobbits{ String name; } public class HobbitsTest{ public static void ma...

编写高质量代码:改善Java程序的151个建议 (第3章 类、对象及方法)

第3章  类、对象及方法 书读得多而不思考,你会觉得自己知道的很多。 书读得多而思考,你会觉得自己不懂的越来越多。 —伏尔泰 在面向对象编程(Object-Oriented Programmi...

源码-JavaScript&jQuery交互式前端开发-第3章-函数、方法与对象-String对象

属性:length 方法: toUpperCase(), toLowerCase(), charAt(), indexOf(), lastIndexOf(), substring(), split...

Java String常见问题解析

  • 2013-11-25 14:23
  • 30KB
  • 下载

Java的String类

  • 2012-09-20 23:59
  • 74KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)