回 帖 发 新 帖 刷新版面

主题:[讨论]Object类的两个方法

Object类的两个方法


上海教育未来java培训中心网址:www.javaedu.com.cn

QQ:2535279 
QQ:841403798

 
1.== 与 equals 方法的比较

  我们已经有一个类:
  
  public class Animal{
      public float weight;
      public float height;
  
      public boolean equals(Object obj){
      
          //判断obj是否为空
          if(obj == null) return false;
          
          //判断两个引用是否一致
          if(obj == this) return true;
          
          //判断参数是否引用了相同类型的对象
          if(!(obj instanceof Animal) return false;
          
          //类型转换
          Animal a =(Animal) obj;
          
          //判断属性值
          return ((a.weight == this.weight) && (a.height == this.height));
      }
    
    }
    
2.equals方法
    
    1.== 与equals方法的比较
        a.== 执行相等的比较
        b.equal方法未被覆盖前,是比较两个引用是否指向同一个对象,但是我们可以覆盖它,使得它可以比较两个对象的内

容.
    2.覆盖了equals方法,就应该覆盖hashcode()方法.
    
    
3.toString()方法:将一个对象转换为String.当发生自动的字符串转换时,编译器调用该方法.
        a = new Animal();
        String str ="hello,world" + a;
        就相当于----> 
        str = "hello,world" + a.toString();


更多java学习资料尽在网址:www.javaedu.com.cn

回复列表 (共2个回复)

沙发

好像很好玩啊!

板凳

Ajax&WebService&SOA&工作流等一切最新最流行的Java技术,你都可以在此畅谈.群号:9888068

Ajax&WebService&SOA&工作流等一切最新最流行的Java技术,你都可以在此畅谈.群号:9888068

我来回复

您尚未登录,请登录后再回复。点此登录或注册