首页 > 其他 > 详细

Object类

时间:2015-07-31 18:02:54      阅读:113      评论:0      收藏:0      [点我收藏+]

Object类是其他所有类的爹

需求:复写Object类的public boolean equals(Object obj)方法

 1 /**
 2 *需求:复写Object的public boolean equals(Object obj)方法
 3 *功能:比较Person的num值与另一个对象的num值是否相等
 4 */
 5 class Person
 6 {
 7     private int num;
 8     //构造方法
 9     Person(int num){
10         this.num=num;
11     }
12     //复写equals
13     public boolean equals(Object obj){
14         /*这样写会报错,因为obj类没有定义num这个属性,需要下转型
15         return this.num==obj.num;
16         */
17         
18         /*弊端:当传入的参数不是Person对象时,不能强转型,所以需要判断处理
19         Person p=(Person)obj;
20         return this.num==p.num;
21         */
22         //如果不是相同对象,直接false
23         if(!(obj instanceof Person)) return false;
24         //强制下转型
25         Person p=(Person)obj;
26         return this.num==p.num;
27 
28     }
29 }
30 
31 class Dog
32 {
33 }
34 class Equals_obj 
35 {
36     public static void main(String[] args) 
37     {
38         Person p1=new Person(1);
39         Person p2=new Person(1);
40         Dog d=new Dog();
41         System.out.println(p1.equals(p2));
42         System.out.println(p1.equals(d));
43     }
44 }

 

Object类

原文:http://www.cnblogs.com/erhai/p/4692681.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!