Java Review之Object类

Object类介绍

介绍

Object类是全部java类的根基类,全部的类都是从它继承下来。java

方法组成

  1. getClass()
    用于获取运行时类对象app

  2. toString()
    一种类型对象进行打印输出或者与字符串类型进行拼接的时候,这个类型的对象都会自动调用toString()方法转换成字符串类型再进行后续操做,若是这个类型没有本身实现toString方法,则调用Object类的,默认返回这个类的ClassName+‘@’+一个hashCode为参数计算的无符号16进制ide

  3. equals(obj)
    很是重要的一个方法,用于判断对象与对象之间是否相等,注意:equals与== 不同, equals只判断对象的值是否相等,==除了判断对象的值,还须要判断对象的内存地址是否同样 注意:equals的参数是Object类型的spa

  4. hashCode()
    此方法返回对象的hash值,主要用于一些集合类(例如HashMap)中进行对象哈希查找,须要强调一对:此方法与equals是一对的,对象重写equals方法必定要把hashcode方法也一块儿重写, 并且选取相同的属性进行运算 定理:equals的两个对象hashCode必定相等,hashCode相等的两个对象不必定equals线程

  5. wait()
    用于暂停持有对象的线程,让出资源,让当前线程进入等待状态, 他与Thread的sleep方法有着本质的区别,wait方法是让线程进入等待状态,此时并不占用对象资源,其余线程能够占用该对象,而sleep方法是霸占着对象资源睡大觉,其余线程只能眼巴巴等着。 该线程wait以后进入等等状态,想要再进入调度状态须要用如下方式唤醒, 1.调用了notify或者notifyAll方法 2.wait()方法设置的等待时间到了 3.其它线程调用了中断线程方法interrupt方法code

  6. notify()
    用于唤醒在对象上等待的某个线程orm

  7. notifyAll()
    用于唤醒在对象上等待的全部线程对象

  8. clone()
    浅拷贝方法,用于快速建立对象,可是由于是浅拷贝,因此建立后的对象改变,原对象也会跟着改变,若是须要深拷贝,须要子类重写clone方法,方法中返回一个从新new的实例对象继承

  9. finalize()
    用于释放资源的,可是由于没法知晓什么时候回调用释放,因此现实中不多使用该方法内存

相关文章
相关标签/搜索