java之Object类用法实例


本文实例讲述了java中Object类用法。分享给大家供大家参考。具体如下:

1、Object类是所有java类的基类

如果在类的声明中未使用extends关键字指明其基类,则默认基类为Object类,ex:

public class Person{

    ~~~~~

}

等价于

public class Person extends Object{

    ~~~~~

}

2、Object类之equals方法

①、Object类中定义有:

  public boolean equals(Object obj)方法。

    提供定义对象是否相等的逻辑。

②、Objec的equals方法  定义为:x.equals(y)当x和y是同一个对象的应用时返回true,否则返回false.

③、J2SDK提供的一些类,如String,Date等,重写了Object的equals()方法,调用这些类的equals方法,x.equals(y),当x和y所引用的是同一类对象且属性内容相等时(并不一定是相等的对象),返回true否则返回false.

④、可以根据需要在用户的自定义类型中重写equals()方法。

实例代码如下:

public class TestEquals{
  public static void main (String args[]){
    Cat cat1 = new Cat(1,2,3);
    Cat cat2 = new Cat(1,2,3);
    System.out.println(cat1 == cat2);
    System.out.println(cat1.equals(cat2  ));
    
    String s1 = new String("hello");
    String s2 = new String("hello");
    System.out.println(s1 == s2);
    System.out.println(s1.equals(s2));
    
  }
}
class Cat{
  int color;
  int height,weight;
  
  Cat(int color , int height , int weight){
    this.color= color;
    this.height = height;
    this.weight = weight;
  }
  
  public boolean equals(Object obj){
    if(obj == null) return false;
    else{
      if( obj instanceof Cat){
        Cat c = (Cat)obj;
        if(c.color == this.color && c.height == this.height && c.weight == this.weight){
          return true;
        }
      }
    }
    return false;
  }
}

运行结果如下图所示:

希望本文所述对大家的Java程序设计有所帮助。


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3