Java中所有类的父类——非常重要的Object类。

Java中所有类的父类——非常重要的Object类。

​ 在Java中,所有的基类都有一个默认的父类,那就是Object类。Object类有下面几种方法
boolean equals(Object obj);//判断某个对象与此对象是否相等
final Class<?> getClass()//返回此Object的运行时类
int hashCode();//返回该对象的哈希码值
String toString();//返回该对象的字符串表示
void finalize();//垃圾回收器调用此方法来清理没有被任何引用变量所引用的资源
Object clone();//返回该对象的克隆

​ 在Object类中,这些函数需要我们重写才能达到相应的功能。下面以重载toString函数为例:

我们发现可以直接用System.out.println()输出自己的字符串表示。

package test;
class A {
	int a;
	A(){};
	public String toString() {
		return "This class A of toString function";
	}
}

public class Kit {
	public static void main(String[] arg) {
		A aa = new A();
		System.out.println(aa);//输出 This class A of toString function
	}
}

另外Object的equals函数是判断两个对象是否引用的同一个对象,更确切的说是变量引用的对象内存地址是否为相等,而不是比较他们的内容是否一样

但是我们可以对equals函数进行重载,来达到我们的目的(判断对象的内容是否一样)。

这里需要注意的是’=='也是判断两个对象变量引用的对象是否相同,而不是比较他们的内容(或者你可以理解为对象变量里面存的都是引用对应的地址)

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Java ,所有父类都是 java.lang.Object 。 在 Java Object 是所有的根,它是所有的祖先,并且是所有父类。所有其他都是从 Object 派生的。 举个例子,如果你定义了一个,例如 MyClass,那么 MyClass 的父类就是 Object,并且 MyClass 就是 Object 的子。这意味着 MyClass 继承了 Object 的所有属性和方法。 例如,Object 有一个 toString() 方法,它返回对象的字符串表示形式。如果你定义了一个 MyClass,并且希望使用 toString() 方法来输出 MyClass 的实例,你就可以在 MyClass 重写 toString() 方法,从而使用自定义的表示形式输出 MyClass 的实例。 总之,所有 Java 父类都是 java.lang.Object 。 ### 回答2: 在Java,所有父类ObjectObjectJava所有的根,即所有的终极父类。无论是Java的内置还是我们自定义的,它们都直接或间接地继承自ObjectObjectJava的基础库的一部分,它提供了一些通用的方法来处理对象,这些方法包括: 1. equals()方法:用于判断两个对象是否相等。 2. hashCode()方法:用于获取对象的哈希码。 3. toString()方法:用于返回对象的字符串表示。 4. getClass()方法:用于获取对象的运行时。 5. wait()、notify()和notifyAll()方法:用于实现线程之间的等待和通知机制等。 由于所有都继承自Object,因此所有都可以使用这些方法。此外,Object还提供了一些其他的方法,如clone()方法、finalize()方法等。 使用Object作为所有父类,可以使得我们在编写代码时更加方便灵活。例如,当我们需要传递一个对象型的参数时,可以统一使用Object型,以适应各种型的对象。同时,Object还提供了一些通用的方法,能够满足一些基本的需求。当然,如果我们需要更多的功能和特性,可以通过自定义来扩展Object,以满足具体的需求。总而言之,ObjectJava扮演着至关重要的角色,是所有的根基。 ### 回答3: 在Java,所有父类是`Object`。`Object`Java语言的顶级,即所有的终极父类。由于所有都直接或间接地继承自`Object`,因此在所有的Java程序,我们都可以调用`Object`定义的共有方法。 `Object`包含了一些常用的方法,包括`equals()`用于比较对象是否相等,`hashCode()`用于获取对象的哈希值,`toString()`用于返回对象的字符串表示等,这些方法在所有都可以直接使用。 由于所有都继承自`Object`,因此我们可以在任何一个的定义使用`super`关键字来引用`Object`的成员或调用`Object`的方法。此外,如果我们在自定义的没有显式地声明一个父类,那么默认情况下这个都会隐式地继承自`Object`。 总之,在 Java,所有父类都是`Object`,它提供了每个都可以使用的常用方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值