Java 源码阅读笔记

String


Gitee 注解版

构造器

构造方法说明
public String()构造一个空串。没有什么实际用处。
public String(String original)构造一个相同的字符串。底层 value 引用是相同的。
public String(char value[])拷贝 char 数组的内容构造字符串。深拷贝。
public String(char value[], int offset, int count)指定范围拷贝 char 数组的内容构造字符串。深拷贝。
public String(int[] codePoints, int offset, int count)指定范围拷贝 int 数组的内容构造字符串。
public String(byte bytes[], int offset, int length, String charsetName)指定范围以指定字符集(字符串表示)解码字节数组构造字符串
String(byte bytes[], int offset, int length, Charset charset)指定范围以指定字符集(对象表示)解码字节数组构造字符串
public String(byte bytes[], String charsetName)以指定字符集(字符串)解码整个字节数组构造字符串
public String(byte[] bytes, Charset charset)以指定字符集(对象)解码整个字节数组构造字符串
public String(byte bytes[], int offset, int length)以默认字符集解码指定范围字节数组构造字符串
public String(byte bytes[])以默认字符集解码整个字节数组构造字符串
public String(StringBuffer buffer)拷贝 buffer 的 value 构造字符串
public String(StringBuilder builder)拷贝 builder 的 value 构造字符串

ThreadLocal


每个 Thread 拥有一个属性 threadLocals,以哈希表为数据结构的类。

ThreadLocal 操作的时候即操作每个 Thread 的 threadLocals 哈希表,哈希表的 index 即 ThreadLocal 的 this 计算出来的。

AtomicInteger


JDK 7 与 JDK 8 实现原子性修改,循环操作移入 Unsafe 类中

https://gitee.com/jiang_chun_bo/jdk7/blob/master/java/util/concurrent/atomic/AtomicInteger.java#L159
https://gitee.com/jiang_chun_bo/jdk8/blob/master/sun/misc/Unsafe.java#L1031

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

罐装面包

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值