关于java:Object类的用法toString-equals

24次阅读

共计 1184 个字符,预计需要花费 3 分钟才能阅读完成。

Object 类

如果一个类没有指定的父类,那么则会默认继承Object 类

public class Student /* extends Object */ {// ...}

  • 学习指标

    • toString
    • equals

toString

toString 办法其实就是返回该对象字符串示意。
关键点来了哈
toString = 对象类型 + “@” + 地址 hashCode(哈希数值)
toString 因为是 返回的后果是地址 ,开发中每个对象 属性不同,所以咱们个别须要重写它。

笼罩重写

不心愿应用 toString 办法失去默认行为, 能够笼罩重写它

类
pubilc class Person{

  @Override
  public String toString(){return "嘻嘻硕" + "❤" + Integer.toHexString(hashCode());
 }  

}

实现类
public class Demo03 {public static void main(String[] args) {Person person = new Person();
        System.out.println(person.toString());
   }
}

输入后果:
曹在硕❤36d64342


equals

equals:批示某个对象是否与此对象 ” 相等 ”。

默认地址比拟 与对象内容比拟

public class Demo02 {public static void main(String[] args) {

        String nub = "ABC";
        String nub1 = "ABC";

        System.out.println(nub.equals(nub1));// true
        
        String nub2 = "abc";
        String nub3 = "abc";

        System.out.println(nub2 == nub3); // true

        String nub4 = new String(); // 新的地址 
        String nub5 = new String();

        System.out.println(nub4 == nub5); // false
      
        String nub6 = new String("abc"); 
        String nub7 = new String("abc");

        System.out.println(nub6.equals(nub7)); // true
        
        
    }
}

== 总结:
1. 根本数据类类型:正确 true 错 false
注:两端数据类型能够不同, 不同的状况 也能够返回 true。

2. 援用数据类型:比拟援用类型变量雷同(首地址值)


equals 总结:
equals 比拟的是地址。


3.String 比拟的是地址

String str1 = new String("ABC");
String str2 = new String("ABC");
System.out.println(str1 == str2); // false
System.out.println(str1.eqyals(str2));  // ture

多花点工夫就能够学会~

正文完
 0