zoukankan      html  css  js  c++  java
  • 十.自定义类中的一些常用方法eqauls,hashcode,toString,getClass等

    1.equals方法

      public boolean equals(Object obj) {
        return (this == obj);//注意:默认比较的是两个对象的地址
      }
      重写注意:this or other

      1. s1和s2是不是指向同一个对象
        if(this==other){
        retuden false;}
      2. s2是不是null
        if(other==null){
        return false;}
      3. s1的类型实际类型和s2对象的实现类型是否相等
        If(this.getClass!=other.getClass){
        Return false;}
      4. 自定义
        {……}

    2.hashCode

      对象获取自己的哈希值,使用哈希算法,根据对象的特点,计算出一个数字,这个数字就是对象的哈希值
      相同对象的哈希值一定相同
      哈希值不同的两个对象一定也是不同的
      哈希值相同的两个对象,有可能相同有可能不同

      对象的哈希值 相当于 人的姓

      相同人的姓一定是相同的
      姓氏不同的两个人一定也是不同的
      姓氏相同的两个人,有可能相同有可能不同

      java中,默认的hashCode方法(Object中的),会保证不同的对象,都会有不同的哈希值,是一个native方法
      public int hashCode() {
        return Id;
      }

    3.toString:打印对象时隐式调用

    4.getClass:

      Object obj=null;
      obj= new Student();
      obj= new Object();
      System.out.println(obj.getClass());
      很重要的一个方法:
      public void test(Object obj) {
        Class c=obj.getClass();
      }

  • 相关阅读:
    Redis入门(二)——基本操作
    Redis入门(一)——安装
    Switch按钮
    Vue入门(三)——模拟网络请求加载本地数据
    Vue入门(二)——Demo
    Vue入门(一)——环境搭建
    Oracle 存储过程
    函数节流
    jQuery实现瀑布流
    二分搜索法整理
  • 原文地址:https://www.cnblogs.com/Magic-Li/p/12802025.html
Copyright © 2011-2022 走看看