文章目录
目录
文章目录
前言
一 .Object是什么?
二 .Object的常用方法
1.tostring
1.1 返回值
1.2 重写toString方法
3.clone(克隆)
1.克隆接口
三.Objects
总结
前言
大家好,我是最爱吃兽奶,今天给大家讲一下java中的object和object的工具类objects
那么,就跟着我一起去看看吧!
一 .Object是什么?
Object是java中的顶级父类,所有的类都会直接或间接的继承Object
二 .Object的常用方法
1.tostring
1.1 返回值
上面我们看到父类Object中的toString方法返回的是一串不明所以的字符串,因此当我们使用toString方法是我们需要重写toString方法
1.2 重写toString方法
2.equals
关于equals的详细使用和解析请参阅http://t.csdn.cn/QauYZ
3.clone(克隆)
1.克隆接口
在java中,如果想要对一个对象进行克隆,就必须实现克隆接口Cloneable
上面克隆文字解释有点差错,补充:
浅拷贝是指拷贝一个对象时,只复制它的引用,而不是对象本身。也就是说,拷贝后的对象和原对象共享同一个引用,它们指向同一个对象。在这种情况下,如果修改拷贝后的对象的属性值,会影响到原对象的属性值。
深拷贝是指拷贝一个对象时,不仅复制它的引用,而且复制对象本身。也就是说,拷贝后的对象和原对象是两个独立的对象,它们的属性值互不影响。
验证父类clone方法是浅拷贝
这个时候或许就会有人问了
String不是引用数据类型吗? 引用数据类型不应该是深拷贝吗?
为什么也是浅拷贝? 其实这和String的不可变性有关
三.Objects
顾名思义,object的工具类
Object是一个对象工具类,提供了一些方法
public static boolean equals(Object a, Object b)
public static boolean isNull(Object obj)
判断对象是否为null,为nul1返回true ,反之返回false
public static boolean nonNull(Object obj)
判断对象是否为null,跟isNull的结果相反
equals这里就不再介绍
总结
以上就是这篇博文讲的主要内容,大家应该重点理解toString,equals,clone