Object类中的方法

toString方法:

  1. 语法形式:public String toString(){ };
  2. 作用:将对象转换成字符串形式,输出格式为类名@十六进制数
  3. 使用方式:直接打印输出一个对象,默认调用toString方法转换为字符串输出默认格式,所以要想得到较为简洁,自己想要的字符串形式建议重写toString方法。

equals方法:

  1. 语法形式:public Boolean equals(Object obj){ return (this==obj);};
  2. 作用:比较两个对象是否相等
  3. 默认原理:系统默认使用==比较两个对象是否相等,比较的是两个对象的内存地址,这显然不够用,所 以我们要想比较两个对象的内容是否相等,就需要重写equals方法(idea可以自动生成)

String类已经重写了equals方法、toString方法,比较两个字符串是否相等可以调用equals方法。

使用equals方法的常规代码:

public Boolean equals(Object obj) {
if(obj == null || !(obj instanceof 类名))//空指针或obj逻辑上不
//属于这个类
return false;
if(this == obj)  //表示两个内存地址相同的东西比较
return true;
类名 变量名=(类名)obj;//把obj强转为该类的类型
if(两个对象的属性进行比较)
return true;
} 

finalize:

  1. 语法:protected void finalize() throws Throwable
  2. 作用:在对象被回收前可以在{ }内写一些代码,java给程序员的一个回收时机,
  3. 特点:不需要调用,JVM在垃圾数量过多或到某个时间点会自动调用。
  4. System.gc();这个代码可以建议JVM启用垃圾回收器,也只是建议,并不一定会执行。

hashCode();

  1. 语法:public native int hashCode();
native表示来自底层语言,java的底层语言为C++######
  1. 作用:引用.hashCode();返回一个经过哈希算法计算过的对象的内存地址(int类型的)。
    哈希值可以等同于内存地址。
posted @ 2021-10-27 22:34  这个世界会好的  阅读(38)  评论(0编辑  收藏  举报