Object 类的方法总结

来源:互联网 发布:方维众筹系统源码 编辑:程序博客网 时间:2024/04/29 06:07

最近师傅觉得我的java基础太差了。。所以让我从java api 看起,这是我看过 Object后的一点总结,有不正确的敬请师傅或各位大师帮我纠正哈~~

Java Object Method :


1. getClass():

Class<? extends  Object> getClass() 返回一个当前正在运行的的类,且加上类的类型

ex:


 

result:


ps :顺便明白哪个是哪个 的对象





2. clone() [克隆]

protected Object clone() 创建这个对象的一个副本

ex:

result:



ps:

由结果看出克隆的两个objct 对象并不相同。

3.equals()

boolean equals (Object obj) 指当前的对象是否与obj相等,并且所有的类的方法继承Object类的这个方法,返回值与参数类型都不变

ex:



result:



4. hashCode()

int hashCode() 返回调用这个方法的对象的哈希码值

ex:


result:

    


     

ps:

多运行几次,你会发现 one 和two  的哈希值会不断变化,而three 和 four  的不会变,因为3 和4 对象有值其地址一定,而one 和two  在执行时每次new 一个对象 内存就会分配一个新的空间给它,所以地址会变。还有,three 的值 为负哦

5.toString()

String toString() 返回调用该方法的对象的字符串表示。

ex:



result:

     

    

ps:

可以看出,one的toString也是内存空间。

 


(6- 9线程神马的,还不太懂,懂了时候,姐会回来补例子哒!!)

6.finalize()

protected void finalize()  当垃圾回收器确定不存在对该对象有更多的引用时,由对象的垃圾回收器掉用该方法

7. notify()

void notify()  唤醒在此对象监视器上等待的单线程

8. notifyAll()

void notifyAll() 唤醒在此对象监视器上等待的所有线程

9. wait()

void wait() 导致当前的线程等待,直到 其他线程 调用此对象的notify()方法或者notifyAll()方法

void wait(long timeOut)  导致当前的线程等待,直到 其他线程 调用此对象的notify()方法或者notifyAll()方法 或者 超过指定的时间量timeOut

void wait(long timeOut,int nanos) 导致当前的线程等待,直到 其他线程 调用此对象的notify()方法或者notifyAll()方法 或者 超过指定的时间量timeOut 或者其他某个线程 中断了当前线程。

0 0
原创粉丝点击