
图源:https://blog.csdn.net/weixin_43915808/article/details/91474659
java 的核心包 lang 包,在 java 的 “护庭十三队” 里属于第一队。 介绍一下它的成员:
- Object 类

第一队队长, Object ,其身份不言而喻。
Object 是所有类的超类, Object类中定义了一些有用的方法,这些方法在其他类中都存在,一般通过重载或者重写覆盖,实现给子类的具体功能。
- equals : 返回值为boolean ,比较两个对象是否相同
- hashCode : 返回值 int ,返回对象的哈希码值。
- toString : 返回值类型 String ,返回对象的字符串表示形式。
- 包装类

一队成员, 负责装箱、拆箱,类型转换等日常任务。
自动装箱:自动将基本数据类型转换成包装类 Integer i = 1;
自动拆箱: 自动将包装类转成基本数据类型,如 Integer i = 2; int n = i;
为什么要有包装类?
我们知道 Java 是一个面向对象的编程语言,基本类型不具有对象的性质,为了让基本类型也是对象的特征,就出现了包装类型,它的作用:
将基本类型“包装起来”,使得它具有了对象的性质,并且为其添加了属性和方法,丰富了基本类型的操作。
包装类和基本数据类型的区别
- 声明方式不同: 基本类型不是用 new 关键字,而包装类需要使用 new 关键字来在堆中分配存储空间;
- 存储方式及位置不同: 基本类型是直接将变量值存储在栈中,而包装类型是将对象存储在堆中,然后通过引用来使用;
- 初始值不同: 基本类型的初始值如 int 为 0 , boolean 为 false ,而包装类型的初始值为 null;
- 使用方法不同 : 基本类型直接赋值使用就好, 而包装类型在集合如 Collection 、Map 时会使用到。
-
字符串
String, StringBuilder , StringBuffer 字符串三兄贵,三个类是好基友。 1队成员(事实证明,一个队伍没有亲兄弟是没有乐趣的,比如哈利波特的韦斯莱兄弟,魔戒里的两兄弟)
String类用于处理“不可变”的字符串,它们的值在创建后不能被更改。
String Buffer 和 StringBuilder 用于处理“可变”字符串。 String类,StringBuffer类和 StringBuilder 都被声明为 final 类型,因此不能将其当做父类再被继承使用了。 -
System
一队成员,System类代表系统,系统级的很多属性都防止在该类内部。由于该类的构造方法是 private 的,所以无法创建该类对象,也就是无法实例化该类(?),其内部的成员变量和成员方法都是static 的,所以也可以很方便的进行调用。 -
Math
一队成员, math类中包含执行基本数学运算的方法,比如:绝对值、较大值等等。 -
Throwable以及Error 和 Exception
一队不仅有兄贵,还有family。
知道名词就行了,光打字都挺累的,真正用的时候再回过头讲。
来源:CSDN
作者:芒骁
链接:https://blog.csdn.net/qq_44587855/article/details/103717832


