Java中的Object类详细介绍

本文详细介绍了Java中Object类的基本概念及其重要方法,如toString(), getClass(), equals()等,并通过实例展示了如何重写equals()方法来比较自定义类的对象内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       理论上Object类是所有类的父类,即直接或间接的继承java.lang.Object类。由于所有的类都继承在Object类,因此省略了extends Object关键字。该类中主要有以下方法: toString(),getClass(),equals(),clone(),finalize(), 其中toString(),getClass(),equals是其中最重要的方法。

        注意:

        Object类中的getClass(),notify(),notifyAll(),wait()等方法被定义为final类型,因此不能重写。

        getClass()方法:不可重写,要调用的话,一般和getName()联合使用,如getClass().getName();

        toString()方法:可重写;如果在实际使用中为特定对象提供一个特定的输出模式,当这个类型转换为字符串或字符串连接时,建自动调用重写的toString()方法。 

?
1
2
3
4
5
6
7
8
publicObjectInstance{
publicString toString(){
return"在"+getClass().getName()+"重写toString()方法"
}
publicstatic void main(String arg[]){
System.out.println(newObjectInstance());
}
}

equals()方法;

?
1
2
3
4
5
6
7
8
9
10
11
12
classV {
}
publicclass OverWriteEquals{
publicstatic void main(String args[]){
String s1="123";
String s2="123";
System.out.println(s1.equals(s2));
V v1=new V();
V v2=new V();
System.out.println(v1.equals(v2));
}
}

输出结果:

?
1
2
3
4
run:
true
false
BUILD SUCCESSFUL (total time:0 seconds)

从本例可以看出,在自定义的类中使用equals()方法进行比较时,将返回false,因为equals方法的默认实现是"=="运算符,即比较两个对象的引用地址,而不是比较对象的内容。所以要想真正比较两个对象中的内容,需要在自定义类中重写equals()方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值