JavaAPI之java.lang.Object
2016-04-16 00:00
344 查看
摘要: 本篇文章结合JDK1.6API详细的探讨了java.lang包中的Object类。
然而,对象o并不能使用MyClass中定义的任何方法和成员变量,因为,这里我们只知道o是一个Object类型的对象,因而只能使用Object中定义的方法,尽管它是实际上是一个MyClass对象。为了让该对象能够调用MyClass中的定义的方法,我们可以将对象o向下转型,由于向下转型是不安全的,所以我们需要显式的进行转化:
这样我们就能使用对象m的所有方法和成员了。
Object类是类层次结构的根类,因此它不继承自任何基类或实现任何接口。
1.概述
在java中,一切都是对象,因而所有的class都属于Object。类Object是类层次结构的根类。每个类都使用
Object作为超类。所有对象(包括数组)都实现这个类的方法。由替代原则我们知道,用导出类的对象可以完全替代一个基类的对象,因此所有java中的对象都可以将其引用赋值给一个Object的引用:
Object o=new MyClass();
然而,对象o并不能使用MyClass中定义的任何方法和成员变量,因为,这里我们只知道o是一个Object类型的对象,因而只能使用Object中定义的方法,尽管它是实际上是一个MyClass对象。为了让该对象能够调用MyClass中的定义的方法,我们可以将对象o向下转型,由于向下转型是不安全的,所以我们需要显式的进行转化:
MyClass m=(MyClass )o;
这样我们就能使用对象m的所有方法和成员了。
2.Object的继承结构
Object类是类层次结构的根类,因此它不继承自任何基类或实现任何接口。
3.Object的类成员变量
无4.Object的构造方法
Object()
5.Object的方法摘要
方法名称及参数列表 | 可见性 | 返回值类型 | 方法概述 |
clone() | protected | Object | 创建并返回此对象的一个副本。 |
equals() | default | boolean | 指示其他某个对象是否与此对象“相等”。 |
finalize() | protected | void | 当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。 |
getClass() | default | Class<?> | 返回此 Object的运行时类。 |
hashCode() | default | int | 返回该对象的哈希码值。 |
notify() | default | void | 唤醒在此对象监视器上等待的单个线程。 |
notifyAll() | default | void | 唤醒在此对象监视器上等待的所有线程。 |
toString() | default | String | 返回该对象的字符串表示。 |
wait() | default | void | 在其他线程调用此对象的 notify()方法或 notifyAll()方法前,导致当前线程等待。 |
wait(long timeout) | default | void | 在其他线程调用此对象的 notify()方法或 notifyAll()方法,或者超过指定的时间量前,导致当前线程等待。 |
wait(long timeout,int nanos) | default | void | 在其他线程调用此对象的 notify()方法或 notifyAll()方法,或者其他某个线程中断当前线程,或者已超过某个实际时间量前,导致当前线程等待。 |
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 什么是 GraphQL?
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- Spark RDD API详解(一) Map和Reduce
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序