如图所示,Object一共有10种方法:

下面详细描述:

1、public Object() 方法,默认构造函数方法,当新建一个Object对象的时候,调用这个方法向堆区申请一片内存;

2、private static native void registerNatives();方法,该方法是用naive修饰的,表明该方法的实现由c、c++完成,编译成dll文件,由java去调用,实现JAVA的JNI。

3、public final native Class<?> getClass(); 方法,该方法也是用native修饰的,有返回值,返回的是类对象Class类型。

4、public native int hashCode();方法,调用该方法返回该对象的哈希码值

     两个对象相等,那么它们的哈希码值一定相等。

     如果两个对象的哈希码值相等,那么这两个对象不一定相等。

     重写equals() 方法一定要重写 hashCode() 方法。

hashCode() 方法主要是方便集合元素的插入和删除的操作。当一个HashSet中需要新插入一个元素时,由于不允许有重复的元素,如果用equals() 方法去比较,那么效率很低。用hashCode() 方法直接返回该哈希码值,可以通过算法判断是否存在该对象。很大地提升效率。

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

     用于比较对象是否相同,一般会重写。

6、protected native Object clone()方法;克隆对象,默认是浅客隆,如果对象的成员变量有对象,需要重写该方法进行深克隆,需要实现Cloneable才能调用clone方法,不然会抛出异常。

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

将对象转换为可读的字符串,一般需要重写。

8、public final native void notify();唤醒阻塞队列中的一个线程。

public final native void notifyAll();唤醒阻塞队列中的所有线程。

9、public final native void wait(long timeout);//精确到毫秒

      public final void wait(long timeout, int nanos);//精确到纳秒

      public final void wait();阻塞线程。

10、protected void finalize(); 一般不建议使用该方法,虚拟机会自动清理对象,或者用try{}finally{}去释放资源。

Object的公用方法们的更多相关文章

  1. Object有哪些公用方法?

    protected Object clone() 创建并返回此对象的一个副本.public boolean equals(Object obj) 指示其他某个对象是否与此对象"相等" ...

  2. DbHelperSQL 判断数据库表结构公用方法

    #region 公用方法        /// <summary>        /// 判断是否存在某表的某个字段        /// </summary>        ...

  3. java基本类型和包装类型的区别以及object的公共方法

    Java的类型分为两部分,一个是基本类型(primitive),如int.double等八种基本数据类型: 一.基本数据类型: byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节 ...

  4. axios源码入口以及公用方法

    axios学习笔记(公用方法) 源码地址 找到入口文件 axios/lib/axios.js var utils = require('./utils'); var bind = require('. ...

  5. 理解JAVA - 面向对象(object) - 属性,方法

    理解JAVA - 面向对象(object) - 属性,方法 多态的体现:    向上造型,父类接收子类对象:向上造型:    从父类角度看不到子类独有的方法:面向对象,人类认知世界的方式:生活中每天都 ...

  6. 利用Object.prototype.toString方法,实现比typeof更准确的type校验

    Object.prototype.toString方法返回对象的类型字符串,因此可以用来判断一个值的类型. 调用方法: Object.prototype.toString.call(value) 不同 ...

  7. Object类clone方法的自我理解

    网上搜帖: clone()是java.lang.Object类的protected方法,实现clone方法: 1)类自身需要实现Cloneable接口 2)需重写clone()方法,最好设置修饰符mo ...

  8. Cloneable接口和Object的clone()方法

    为什么要克隆 为什么要使用克隆,这其实反映的是一个很现实的问题,假如我们有一个对象: public class SimpleObject implements Cloneable { private ...

  9. JavaScript:Object.prototype.toString方法的原理

    在JavaScript中,想要判断某个对象值属于哪种内置类型,最靠谱的做法就是通过Object.prototype.toString方法. var arr = []; console.log(Obje ...

随机推荐

  1. Java设计

    重构前 CustomDataChar | getConnection()findCustomers()createChar()displayChar() 重构后 CustomDataChar | da ...

  2. ConcurrentHashMap弱一致性

    [原文链接] 本文将用到Java内存模型的happens-before偏序关系(下文将简称为hb)以及ConcurrentHashMap的底层模型相关的知识.happens-before相关内容参见: ...

  3. jquery animate() stop() finish() 方法使用

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. springBoot按条件装配:Condition

    编码格式转换器接口 package com.boot.condition.bootconditionconfig.converter; /** * 编码格式转换器接口 */ public interf ...

  5. bzoj2676 Contra

    题意: 给定N,R,Q,S 有N个关卡,初始有Q条命,且任意时刻最多只能有Q条命 每通过一个关卡,会得到u分和1条命,其中u=min(最近一次连续通过的关数,R) 若没有通过这个关卡,将失去一条命,并 ...

  6. paramiko连接远程主机,上传下载文件

    Paramiko是基于SSHv2协议实现的一个Python模块,提供客户端和服务器的功能.Paramiko本身是一个围绕SSH网络概念的纯Python接口. Client: # 创建一个SSH连接对象 ...

  7. [APIO2017]商旅 0/1分数规划

    ---题面--- 题解: upd: 在洛谷上被Hack了...思路应该是对的,代码就别看了 感觉有个地方还是非常妙的,就是因为在x买东西,在y卖出,就相当于直接从x走向了y,因为经过中间的城市反正也不 ...

  8. 解析Fetch实现请求数据

    一 序言 在 传统Ajax 时代,进行 API 等网络请求都是通过XMLHttpRequest或者封装后的框架进行网络请求,然而配置和调用方式非常混乱,对于刚入门的新手并不友好.今天我们介绍的Fetc ...

  9. BZOJ3435 & 洛谷3920 & UOJ55:[WC2014]紫荆花之恋

    https://www.lydsy.com/JudgeOnline/problem.php?id=3435 https://www.luogu.org/problemnew/show/P3920 ht ...

  10. Codeforces Round #393 (Div. 2) (8VC Venture Cup 2017 - Final Round Div. 2 Edition)A 水 B 二分 C并查集

    A. Petr and a calendar time limit per test 2 seconds memory limit per test 256 megabytes input stand ...