首页 > 编程语言 >Java中Object类的学习

Java中Object类的学习

时间:2024-08-23 19:38:38浏览次数:10  
标签:调用 Java 对象 Object object 学习 线程 方法

Object类


目录

object的介绍

Object类是Javajava.lang包下的核心类,Object类是所有类的父类,何一个类时候如果没有明确的继承一个父类的话,那么它就是Object的子类;

以下两种类的定义的最终效果是完全相同的:

class Person { }

class Person extends Object { }

object类提供了十一个方法

  1. clone()

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

  1. getClass()

final方法,返回Class类型的对象,反射来获取对象。

  1. toString()

该方法用得比较多,一般子类都有覆盖,来获取对象的信息。

  1. finalize()

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

  1. equals()

比较对象的内容是否相等

  1. hashCode()

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

  1. wait()

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

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

其他线程调用了该对象的notify方法。
其他线程调用了该对象的notifyAll方法。
其他线程调用了interrupt中断该线程。
时间间隔到了。
此时该线程就可以被调度了,如果是被中断的话就抛出一个InterruptedException异常。

  1. notify()

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

  1. notifyAll()

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

10.toString()

toString():取得对象信息,返回该对象的字符串表示

11.equals()

equals():对象比较

标签:调用,Java,对象,Object,object,学习,线程,方法
From: https://www.cnblogs.com/BingBing-8888/p/18376921

相关文章

  • 机器学习—KNN算法-分类及模型选择与调优
    KNN算法-分类样本距离判断:欧氏距离、曼哈顿距离、明可夫斯基距离KNN算法原理:        K-近邻算法(K-NearestNeighbors,简称KNN),根据K个邻居样本的类别来判断当前样本的类别;如果一个样本在特征空间中的k个最相似(最邻近)样本中的大多数属于某个类别,......
  • 程序员的成长之路:平衡编码工作与持续学习
    目录一、引言1.1程序员面临的挑战与机遇1.2日常工作与提升自我学习的矛盾二、高效编码习惯与时间管理技巧2.1模块化设计与代码复用2.2代码质量管理与技术债务的减少2.3使用合适的工具和技术栈2.4时间管理技巧2.4.1番茄工作法2.4.2时间块规划与任务优先级2.......
  • 如何学习单片机:从入门到精通的全面指南
    摘要本文旨在为初学者提供一份系统的单片机学习指南,涵盖了从基础知识到进阶应用的各个方面。文章首先介绍了单片机的基本概念和架构,帮助读者理解单片机的工作原理和常见的单片机型号。接着,文章详细讲解了如何选择适合的单片机及其开发工具,并提供了一些入门和进阶学习的实用建......
  • JavaSE基础知识分享(十四)
    写在前面今天继续讲Java中的类加载器和lambda表达式的知识!类加载器和反射类的加载当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载、连接、初始化三步来实现对这个类进行初始化。加载将.class文件读入内存,并为之创建一个Class对象。任何类被使用时系......
  • C++ STL源码个人学习与分析记录 ——空间配置器(allocator)
    STL源码个人学习与分析记录——空间配置器(allocator)1.为什么需要空间配置器?2.SGI-STL空间配置器的实现2.1一级空间配置器:malloc_alloc_template2.2二级空间配置器:default_alloc_template2.2.1.内存池技术2.2.2.自由链表(free-list)2.2.3Union2.3二级空间配置器的......
  • C++ STL源码个人学习与分析记录 ——Construct()与Destroy()
    STL源码个人学习与分析记录——Construct()与destroy()1.目前所使用的编译器1.1编译器:MinGWVersion:13.2.01.2MinGW的主要组件1.3写文初衷2.构造与析构工具:Construct()与Destory()函数的定义2.1Construct()函数的定义2.1.1“__cplusplus”的含义2.1.2编译组态2.1.3(void......
  • 【JavaEE初阶】滑动窗口和流量控制以及拥塞控制
    目录......
  • Java毕业设计作品(119):基于thymeleaf前后端分离 驾校会员报名和管理系统设计与实现
      博主介绍:黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。所有项目都配有从入门到精通的基础知识视频课程,学习后应对毕业设计答辩。项目配有对应开发文档、开题报告、任务书......
  • 《智能计算系统:从深度学习到大模型(第2版)》重磅上市!
      大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法行......
  • cloud compare 学习利用CC代码加快插件开发与总结(三)
    建议看过前面的文章后,再开始本文的学习cloudcompare二次插件化功能开发详细步骤(一)cloudcomparePCA插件开发详细步骤(二)附代码本文完成一个点云变换的插件,同时也是对CC接口的使用做进一步说明,进一步理解CC插件开发流程这个功能在cc已有的功能已经存在,位于edit->app......