iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >java中Object类实现了哪些方法
  • 172
分享到

java中Object类实现了哪些方法

2023-05-30 16:05:15 172人浏览 八月长安
摘要

这篇文章给大家分享的是有关java中Object类实现了哪些方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Object是所有类的父类,任何类都默认继承Object。Object类到底实现了哪些方法?1.clo

这篇文章给大家分享的是有关java中Object类实现了哪些方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Object是所有类的父类,任何类都默认继承Object。Object类到底实现了哪些方法?

1.clone方法

保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出CloneNotSupportedException异常。

2.getClass方法

final方法,获得运行时类型。

3.toString方法

该方法用得比较多,一般子类都有覆盖。

4.finalize方法

该方法用于释放资源。因为无法确定该方法什么时候被调用,很少使用。

5.equals方法

该方法是非常重要的一个方法。一般equals和==是不一样的,但是在Object中两者是一样的。子类一般都要重写这个方法。

6.hashCode方法

该方法用于哈希查找,重写了equals方法一般都要重写hashCode方法。这个方法在一些具有哈希功能的Collection中用到。

一般必须满足obj1.equals(obj2)==true。可以推出obj1.hash-Code()==obj2.hashCode(),但是hashCode相等不一定就满足equals。不过为了提高效率,应该尽量使上面两个条件接近等价。

7.wait方法

wait方法就是使当前线程等待该对象的,当前线程必须是该对象的拥有者,也就是具有该对象的锁。wait()方法一直等待,直到获得锁或者被中断。wait(longtimeout)设定一个超时间隔,如果在规定时间内没有获得锁就返回。

调用该方法后当前线程进入睡眠状态,直到以下事件发生。

(1)其他线程调用了该对象的notify方法。

(2)其他线程调用了该对象的notifyAll方法。

(3)其他线程调用了interrupt中断该线程。

(4)时间间隔到了。

此时该线程就可以被调度了,如果是被中断的话就抛出一个InterruptedException异常。

8.notify方法

该方法唤醒在该对象上等待的某个线程。

9.notifyAll方法

该方法唤醒在该对象上等待的所有线程。

—Object—

ClassObjectistherootoftheclasshierarchy.EveryclasshasObjectasasuperclass.Allobjects,includingarrays,implementthemethodsofthisclass.——Fromoracle

—释义—

Object类是java中所有对象所继承的父类,即便是数组也继承了该父类(可以理解为原始类,所有类的祖先,你也许会想问:詹姆斯第一个写的类是不是Object?)。

所有类对Object类的继承都是隐式继承,所以无法看到。

java中Object类实现了哪些方法

—Object—

默认构造方法

—clone—

—equals—

Indicateswhethersomeotherobjectis"equalto"thisone.

Theequalsmethodimplementsanequivalencerelationonnon-nullobjectreferences:—FromORacle—

原始类Object的equals比较的是两个变量的非空对象的引用。

源码

public boolean equals(Object obj) {     return (this == obj);     }

通过源码我们看到,原始类equals其实与“==”是等价的。

—finalize—

—getClass—

—hashcode—

IntheJavaprogramminglanguage,everyclassimplicitlyorexplicitlyprovidesahashCode()method,whichdigeststhedatastoredinaninstanceoftheclassintoasinglehashvalue(a32-bitsignedinteger).ThishashisusedbyothercodewhenstoringORManipulatingtheinstance–thevaluesareintendedtobeevenlydistributedforvariedinputsforuseinclustering.Thispropertyisimportanttotheperformanceofhashtablesandotherdatastructuresthatstoreobjectsingroups("buckets")basedontheircomputedhashvalues.Technically,inJava,hashCode()bydefaultisanativemethod,meaning,ithasthemodifier'native',asitisimplementeddirectlyinthenativecodeintheJVM.

Source:Wikipedia

java中每个类都隐式或者显式的实现了Object的hashcode方法。

跟谷歌和官方个人总结,作者为什么要在原始类中存在hashcode呢?

①、类对象的存储优化,便于查找类对象。

②、配合equals使用。

注意:很多博客表示hashcode方法返回的是该类的物理存储地址或者是逻辑存储地址,这个说法是错误的,按照官方的说法:返回的32位值只是与类对象的存储位置有关。

—notify—

—notifyall—

—toString—

ThetoStringmethodforclassObjectreturnsastrinGConsistinGofthenameoftheclassofwhichtheobjectisaninstance,theat-signcharacter`@',andtheunsignedhexadecimalrepresentationofthehashcodeoftheobject.InotherWords,thismethodreturnsastringequaltothevalueof:

getClass().getName()+'@'+Integer.toHexString(hashCode())

源码:

 public String toString() {      return getClass().getName() + "@" + Integer.toHexString(hashCode());    }

返回一个格式为类名+@+该类的hash值。

—wait—

finalize()

感谢各位的阅读!关于“java中Object类实现了哪些方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: java中Object类实现了哪些方法

本文链接: https://www.lsjlt.com/news/219859.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • java中Object类实现了哪些方法
    这篇文章给大家分享的是有关java中Object类实现了哪些方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Object是所有类的父类,任何类都默认继承Object。Object类到底实现了哪些方法?1.clo...
    99+
    2023-05-30
  • java中object类的常用方法有哪些
    Java中Object类的常用方法有: equals(Object obj):判断两个对象是否相等。 hashCode():返回对...
    99+
    2023-10-25
    java object
  • Java中Object类常用的方法有哪些
    本篇内容主要讲解“Java中Object类常用的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java中Object类常用的方法有哪些”吧!前言Java 中的 Object 方法在面试...
    99+
    2023-06-22
  • java中Object有哪些公用方法
    小编给大家分享一下java中Object有哪些公用方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Object有哪些公用方法?clone() 创建斌返回此对象的副本equals() 判断...
    99+
    2024-04-02
  • Java中Object转换为List类型的实现方法
    前言 在很多项目编写过程中会使用Map<?>类型来进行参数的传递。为了能够让更多的类型放入value中,实例化的类型往往是Map<String, Obje...
    99+
    2024-04-02
  • Java Object类方法实例分析
    本文小编为大家详细介绍“Java Object类方法实例分析”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java Object类方法实例分析”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.equals方法1...
    99+
    2023-06-30
  • Java Object类equals方法
    基本概念: Object类位于java.lang包中,java.lang包包含着Java最基础和核心的类,在编译时会自动导入;Object类是所有Java类的祖先。每个类都使用 Ob...
    99+
    2024-04-02
  • java中的Object类的toSpring()方法
    Object是类层次结构的根,每个类都可以将Object作为超类。所有类都直接或者间接的继承自该类 构造方法:public Object() 回想面向对象中,为什么说子类的构造方法默...
    99+
    2024-04-02
  • Java中Object类的方法怎么用
    这篇文章主要介绍了Java中Object类的方法怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java中Object类的方法怎么用文章都会有所收获,下面我们一起来看看吧。前言:Java的Object 类的...
    99+
    2023-06-30
  • Java中的Object类知识点有哪些
    这篇文章主要讲解了“Java中的Object类知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java中的Object类知识点有哪些”吧!1.Object类是什么?Object 是...
    99+
    2023-07-02
  • 你了解Java中的Object类吗
    任何一个类默认继承Object类,就算没有直接继承,最终也会间接继承。 Object类,有两种方式找到: 第一种:在源码当中找到 第二种:查阅java类库的帮助文档...
    99+
    2024-04-02
  • 了解java中对象基础Object类
    目录一、Object简述1、显式扩展2、引用与对象二、基础方法1、getClass2、toString3、equals与hashCode4、thread相关5、clone6、fina...
    99+
    2024-04-02
  • Java中List.contains(Object object)方法使用
    使用List.contains(Object object)方法判断ArrayList是否包含一个元素对象(针对于对象的属性值相同,但对象地址不同的情况),如果没有重写List<...
    99+
    2024-04-02
  • Java Object类equals方法怎么用
    这篇文章主要介绍“Java Object类equals方法怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java Object类equals方法怎么用”文章能帮助大家解决问...
    99+
    2023-06-30
  • java中的Object类的toSpring()方法怎么用
    这篇文章主要讲解了“java中的Object类的toSpring()方法怎么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java中的Object类的toSpring()方法怎么用”吧!O...
    99+
    2023-06-30
  • java中Object类4种方法详细介绍
    目录Object(四大方法):hashCode()方法:equals()方法:getClass()方法:toString()方法:总结Object(四大方法): 文章干货满满,耐性看...
    99+
    2024-04-02
  • java中object类实例分析
    问:什么是Object类?答:Object类存储在java.lang包中,是所有java类(Object类除外)的终极父类。当然,数组也继承了Object类。然而,接口是不继承Object类的,Object类不作为接口的父类。下面,我们就通...
    99+
    2023-05-30
    java object类 ava
  • java中arrays类的方法有哪些
    在Java中,Arrays类提供了许多用于操作数组的方法。以下是Arrays类的一些常用方法:1. asList(T... a):将...
    99+
    2023-09-29
    java
  • java中thread类的方法有哪些
    Java中Thread类的常用方法包括:1. start():启动线程,使线程进入可执行状态。2. run():线程执行的代码,需要...
    99+
    2023-08-15
    java thread
  • Java深入探究Object类的方法
    目录1.equals方法1.API中equals方法的介绍2.==和equals 的对比2.hashCode方法3.toString方法4.finalize方法本文主要带大家看看Ob...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作