119 01 Android 零基础入门 02 Java面向对象 05 Java继承(下)02 Object类 01 Object类介绍(上)

119 01 Android 零基础入门 02 Java面向对象 05 Java继承(下)02 Object类 01 Object类介绍(上)

**本文知识点:Object类介绍(上) **

说明:因为时间紧张,本人写博客过程中只是对知识点的关键步骤进行了截图记录,没有对截图步骤进行详细的文字说明(后面博主时间充裕了,会对目前的博客编辑修改,补充上详细的文字说明);有些步骤和相关知识点缺乏文字描述,可能会难以理解。读者如有不明之处,欢迎博客私信或者微信(本人微信在博客下方的“关于博主”处)与本人交流,共同进步

当我们学习Java中的继承关系的时候,就一定要来认识一下所有类的祖先——Object类

Java中,Object类是所有类的父类

119 01 Android 零基础入门  02 Java面向对象 05 Java继承(下)02 Object类 01 Object类介绍(上)

当子类继承自父类之后,就可以被允许使用父类派生的所有成员和方法
119 01 Android 零基础入门  02 Java面向对象 05 Java继承(下)02 Object类 01 Object类介绍(上)

Object类的成员

119 01 Android 零基础入门  02 Java面向对象 05 Java继承(下)02 Object类 01 Object类介绍(上)

Object类中的equals()方法

作用:
用来判断调用equals方法的引用和传进来的参数equals(Object obj) obj的引用是否一致,也即这2个引用是否指向同一块内存地址?

我们在一个类中,如果没有去重写equals方法,那么equals的作用就和“==”的作用一致。
119 01 Android 零基础入门  02 Java面向对象 05 Java继承(下)02 Object类 01 Object类介绍(上)

因此,equals方法是我们在类中经常进行重写的一个方法。

String中重写了Object类中的equals()方法

比如:
比较经典的被重写的equals方法,就是String类中重写的equals方法

119 01 Android 零基础入门  02 Java面向对象 05 Java继承(下)02 Object类 01 Object类介绍(上)

119 01 Android 零基础入门  02 Java面向对象 05 Java继承(下)02 Object类 01 Object类介绍(上)

String中重写后的equals()方法就不是用来判断两个字符串对象String字符串类型是类类型,是引用类型,所以说是字符串对象)的引用是否一致了,而判断的是两个字符串的值是否相同。

119 01 Android 零基础入门  02 Java面向对象 05 Java继承(下)02 Object类 01 Object类介绍(上)
119 01 Android 零基础入门  02 Java面向对象 05 Java继承(下)02 Object类 01 Object类介绍(上)

public class TestThree {
     public static void main(String[] args) {
         Animal one = new Animal("花花",2);
         Animal two = new Animal("花花",2); 
         // equals()方法:当继承的是Object类中的equals方法时,比较的是两个引用是否指向一个对象,比较的是对象的引用(即对象在内存中的地址)是否一致
         boolean flag = one.equals(two);
         System.out.println("one 和 two 的引用比较:" + 
flag);
         System.out.println("one 和 two 的引用比较:" + 
(one == two));  
         System.out.println("===========================================");
         String str1 = new String("hello");
         String str2 = new String("hello");
         flag = str1.equals(str2);
         System.out.println();
         System.out.println("str1 和 str2 的引用比较:" 
+ flag);//String类中的equals方法重写了,只比较字符串的内容
         System.out.println("str1 和 str2 的引用比较:" 
+ (str1 == str2));//比较2个引用是否指向同一个对象          
     }
}

119 01 Android 零基础入门 02 Java面向对象 05 Java继承(下)02 Object类 01 Object类介绍(上)

上一篇:Appium对iOS的几种定位方法


下一篇:114 01 Android 零基础入门 02 Java面向对象 04 Java继承(上)02 继承的实现 04 继承的初始化顺序