Object类和Dome的新媒体类型
Object类
所有的类都是继承自Object的
Java Object 类是所有类的父类,也就是说 Java 的所有类都继承了 Object,子类可以使用 Object 的所有方法
Object 类位于 java.lang 包中,编译时会自动导入,我们创建一个类时,如果没有明确继承一个父类,那么它就会自动继承 Object,成为 Object 的子类
Object 类可以显式继承,也可以隐式继承,以下两种方式是一样的:
显示继承:
public class Runoob extends Object{
}
隐式继承:
public class Runoob {
}
类的构造函数
------------------------------
Object()
构造一个新对象
------------------------------
类的方法
1 protected Object clone()
创建并返回一个对象的拷贝
2 boolean equals(Object obj)
比较两个对象是否相等
3 protected void finalize()
当 GC (垃圾回收器)确定不存在对该对象的有更多引用时,由对象的垃圾回收器调用此方法。
4 Class<?> getClass()
获取对象的运行时对象的类
5 int hashCode()
获取对象的 hash 值
6 void notify()
唤醒在该对象上等待的某个线程
7 void notifyAll()
唤醒在该对象上等待的所有线程
8 String toString()
返回对象的字符串表示形式
9 void wait()
让当前线程进入等待状态。直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法。
10 void wait(long timeout)
让当前线程处于等待(阻塞)状态,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法,或者超过参数设置的timeout超时时间。
11 void wait(long timeout, int nanos)
与 wait(long timeout) 方法类似,多了一个 nanos 参数,这个参数表示额外时间(以纳秒为单位,范围是 0-999999)。 所以超时的时间还需要加上 nanos 纳秒
Dome的新媒体类型
可扩展性,可维护性
~在现在这种 Database 的架构下,我们要增加一个新的媒体类型,会变得非常容易,只需要增加 item 类的一个新的子类就可以了,对于 Database 来说,它里面的 add函数、list函数等是不需要动的,这种特性被我们称为:可扩展性
~可扩展性:你的代码不需要经过修改,就可以扩展去适应新的数据、新的内容
~可维护性:你的代码需要经过修改,可以去适应新的数据、新的内容
更深的继承
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)