源码阅读系列——java.lang

本文深入探讨了Java中的Object类,揭示了八大基本类型包装类的装箱和拆箱原理,特别是对于Double、Char等类的缓存优化策略。此外,还详细分析了String的不可变性以及在字符串长度变化时的效率问题。最后,对比了StringBuilder和StringBuffer在多线程环境下的性能和线程安全性差异,包括它们的扩容策略。
摘要由CSDN通过智能技术生成


java.lang是平时用的比较多的包之一,但是内容比较简单,所以我就放到这里了。

Object

Object类是平时用的最多的类——因为是所有方法的父类。随着源码来看看

package java.lang;

public class Object {
   

    /**
     * 返回方法运行时的java.lang.Class对象. 
     */
    public final native Class<?> getClass();

    /**
     * 返回类的Hash值,Hash值在有的工具类中使用的比较多。例如Hashtable,HashMap;
     * hashCode原则
     * 1、同一个的程序中,相同对象的Object在不同时刻相等
     * 2、如果两个对象的equals方法返回true,那么他们的hashCode要想等。
     * 3、如果两个对象的equals方法返回false,那么他们的hashCode可以不相等。
     */
    public native int hashCode();
    public boolean equals(Object obj) {
   
        return 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值