Java常用类

一、Object类

  • getClass()方法
    1.返回值为class,即返回实际对象类型
    2.多应用于对比两个对象实际类型是否相同
    在这里插入图片描述
  • hashCode()方法
    1.返回值为int,返回对象的哈希码值
    2.用于判断两个对象是否相同,若相同则返回相同的哈希码
    3.哈希值是根据对象的地址或字符串或数字使用哈希算法计算出来的int数值
    在这里插入图片描述
  • toString()方法
    1.返回值为String,返回该对象的字符串表现形式:
    getClass().getName() + ‘@’ + Integer.toHexString(hashCode())
  • equals()方法
    1.返回值为boolean,判断两个对象是否相等
    2.boolean equals(Obj obj){return this==obj}
  • finalize()方法
    1.当对象被判定为垃圾对象时,由JVM自动调用此方法,用以标记垃圾对象,进入回收队列
    2.垃圾对象:没有有效引用指向该对象时,被称为垃圾对象
    3.自动回收机制:当JVM内存耗尽,一次性回收所有的垃圾对象
    4.手动回收机制:使用system.gc();通知JVM执行垃圾回收
    在这里插入图片描述

二、包装类

  • Java中的基本数据类型没有方法和属性,而包装类就是为了让这些拥有方法和属性,实现对象化交互。所谓包装类,就是能够直接将简单类型的变量表示为一个类
    在这里插入图片描述
  • 装箱:将栈中的基本数据类型转换为堆中的引用类型
  • 拆箱:将堆中的引用类型转换为栈中的基本数据类型
    在这里插入图片描述
    在这里插入图片描述
    ps:对class文件进行反编译,可以看到自动装箱和拆箱系统实际上还是执行了手动装箱和拆箱,调用的不是构造方法而是integer.valueof()
  • 字符串和基本数据类型的转换
  • 在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
ps:当类型不兼容时,就会抛出NumberFormatException异常

  • Integer缓存区
    在这里插入图片描述
    第二个是true第三个是false,具体原因查看valueof()源码

三、String类

  • 字符串字面值存在字符串池中,可以共享
  • 使用String s=“hello”,则只在字符串缓冲池中开辟一块空间
    在这里插入图片描述
    ps:定义String s="hello"后hello被存在在字符串池中,而栈中存储的的是指向字符串池中hello的地址,若是在定义一个s2=“hello”,则首先会找字符串池中是否有hello,若有在栈中会开辟一块空间,指向hello,即栈中s和s1指向的地址是一样的
  • 若使用String s=new String(“java”),则在字符串缓冲区和堆中都会开辟空间,先指向堆中,堆在指向字符串池中, 要是再创建一个String s2=new String(“java”),则在堆中会开辟一个新空间,指向字符串池中相应的“java”,所以二者的地址是不同的
    在这里插入图片描述
    在这里插入图片描述
  • String类常用方法
    在这里插入图片描述
    ps:下标都是从0开始,toLowerCase()是将大写转换成小写,startWith(str)判断是否以str开开头
  • splite方法小技巧,要想使用多个分隔符system.out.println("[,.]")用小括号括起来(直接连着写),将,和.都分开,若要分离多个,和.则system.out.println("[,.]+")
    在这里插入图片描述
    compareTo(str),比较字符大小,返回的是差值
    replace可以实现插入
    char的包装类中有toUpperCase(),作用是将一个字符变成大写
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
ps:上面这些常用的方法StringBuilder和StringBuffer都具备,可以互换,下标一般是包含头部不包含尾部。

四、BigDecimal类

在这里插入图片描述
ps:在进行加减乘除时不可以直接用数学符号,因为创建的是对象,不可直接运算,需要调用方法,并且要注意在复制时,采用的是字符串形式,要是采用浮点数形式很可能导致计算结果出错。
在这里插入图片描述

五、Calendar类

在这里插入图片描述
在这里插入图片描述
ps:Calendar.YEAR是Calendar中的一个常量,具体可进入Calendar中进行查看
toLocalString()是以较简洁的方式展现日期和时间即:年-月-日 时:分:妙
在这里插入图片描述
在这里插入图片描述

六、SimpleDateFormat类

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

七、System类

在这里插入图片描述
ps:因为system类构造方法是私有的,因此可以不创建对象,直接用System

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值