1、概述

    Object常用方法

       1.1  getClass():            

public final native Class<?> getClass();

            返回   该对象   运行时的Class对象;

package com.an.javase;

public class HashCodeTest {

    public static void main(String[] args){
System.out.println(new Person().getClass());
} static class Person{
private String name;
private int age;
}
} 结果:
class com.an.javase.HashCodeTest$Person

 

       1.2  hashCode()

public native int hashCode();

             返回该对象的哈希码值;

             这个方法是为了支持java中的散列表,比如:HashMap、hashtable...

             ******java中   调用同一个对象的hashCode()必须   返回相同的整数;

               但是,存在一个问题:有可能不同对象的hashCode()返回值相等

 

       1.3  equals()

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

              比较2个对象是否相等(内存中的地址值);

              该方法规定:如果2个对象equals()返回true,则必须有相同的hashCode值

              实际业务中:需要比较不同内存对象但内容相同,也视为相同,需要重写equals();

package com.an.javase;

public class EqualsTest {

    private String name;
private Integer age; @Override
public boolean equals(Object obj) {
if (this==obj){
return true;
}
if (obj instanceof EqualsTest){
EqualsTest equalsTest=(EqualsTest) obj;
if (equalsTest.name.equals(this.name)){
return true;
}
}
return false;
}
}

  

       1.4  toString()

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

             对象自我描述的功能,告诉外界该对象具有的信息;

             当直接将对象进行输出时,调用的是toString();

             toString()返回值:类名+@+hashCode值

       1.5  wait()

       1.6  wait(long timeout)

       1.7  wait(long timeout, int nanos)

       1.8  notify()

       1.9  notifyAll()

       1.10  clone()

       1.11  finalize()

protected void finalize() throws Throwable { }

            当垃圾收集确定不再有对该对象的引用时,垃圾收集器在对象上调用该对象;

JavaSE---Object的更多相关文章

  1. javaSE之Object及hashcode等相关知识

    object: package javaBasic; public class TestObject { public static void main(String[] args) { // TOD ...

  2. JavaSE基础知识(5)—面向对象(Object类)

    一.包 java.lang包,属于java中的核心包,系统默认导入的,不用手动导入该包中的类:Object.System.String.Integer等 1.包的好处 ①分类管理java文件,查找和管 ...

  3. [javaSE] 面向对象(Object类toString)

    每一个对象,都有一个在内存中的地址哈希值,这个哈希值是十六进制的 调用Object对象的hashCode()方法,返回这个对象的哈希值 调用Integer.toHexString()方法,转换十六进制 ...

  4. JavaSE 学习笔记之Object对象(八)

    Object:所有类的直接或者间接父类,Java认为所有的对象都具备一些基本的共性内容,这些内容可以不断的向上抽取,最终就抽取到了一个最顶层的类中的,该类中定义的就是所有对象都具备的功能. 具体方法: ...

  5. Javase之object类的概述

    object类的概述 object类是类层次结构的根类,每个类都使用object作为超类. 即每个类都直接或间接的继承object类. object类中方法介绍 hashCode public int ...

  6. JAVASE(十)面向对象:特性之多态性、Object类、代码块、关键字:static、final、父子类执行顺序

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 1.面向对象的特性之:多态性 多态性的理解:事物的多种形态 1.1 广义上多态性的体现:①方法的重写,重 ...

  7. JavaSE常用类之Object类

    1. hashCode方法 代码: package NeiBuLei; public class hashCode { public static void main(String[] args) { ...

  8. javaSE基础04

    javaSE基础04 一.三木运算符 <表达式1> ? <表达式2> : <表达式3> "?"运算符的含义是: 先求表达式1的值, 如果为真, ...

  9. javase基础复习攻略《三》

    编程语言的发展: 机器语言——直接由计算机的指令组成,指令.地址.数据都是以"0"和"1"的符号串组成,可以被计算机直接执行. 汇编语言——用容易理解和记忆的符 ...

  10. RCE via XStream object deserialization && SECURITY-247 / CVE-2016-0792 XML reconstruction Object Code Inject

    catalogue . Java xStream . DynamicProxyConverter . java.beans.EventHandler . RCE via XStream object ...

随机推荐

  1. Python"sorted()"和".sort()"的区别

    sorted(A-LIST)会返回一个新的object,不改变**A-LIST*本身. A-LIST.sort()会直接改变A-List,不产生新的object.

  2. 【leetcode】623. Add One Row to Tree

    题目如下: Given the root of a binary tree, then value v and depth d, you need to add a row of nodes with ...

  3. IDEA不认识jstl

    解决方案:一.在pom.xml文件查看是否<packaging>的值是否是war  二:在jsp文件中加上这句话. <%@page isELIgnored="false&q ...

  4. flutter页面布局二

    Stack 在flutter中,Stack表示堆的意思,可以用来实现页面的定位布局. Stack组件接收两个可选参数: alignment:配置所有子元素的显示位置 children:子组件    在 ...

  5. delphi中如何将一整个文件读入内存

    来源 https://bbs.csdn.net/topics/390985048 分配一块大内存吧,要是一下申请不了64M那么大,就多申请几块小的,用个链表连起来.用FileStream类的方法读取文 ...

  6. python之正则表达式(re模块)用法总结

    用一句表示正则表达式,就是 字符串的模糊 匹配

  7. appium移动端自动化测试的一些感想

    花了一个多月的时间来复习,学习appium+python+android的UI层的自动化测试. 从最开始的环境搭建,都后面运行脚本报错各类错,到优化脚本结构,基本上问题不断. 相比,selenium做 ...

  8. error C2065: “SHELLEXECUTEINFO”: 未声明的标识符

    转自VC错误:http://www.vcerror.com/?p=1385 问题描述: error C2065: "SHELLEXECUTEINFO": 未声明的标识符 解决方法: ...

  9. 使用 jQuery 实现 radio 的选中与反选

    使用 jQuery 实现 radio 的选中与反选 我们知道在 Html 中当我们选中一个radio后,再次点击该 radio,那么该 radio 依然是一个选中的状态,但是有时我们需要实现这样的逻辑 ...

  10. 编译-构建Shell语法的语法树(parse tree)

    翻译自:Generating a parse tree from a shell grammar - DEV Community