• Object类


    java中创建对象的两种方式:
     方式一:自定义类,然后通过自定义的类创建对象。
     方式二:sun提供了很多的类给我使用,我们只需要认识这些类,我们就可以通过这些类创建对象了。
     

    Object类:
    Object类是所有类的终极父类。 任何一个类都继承了Object类。

    Object类中常用的方法:

      toString();    返回该对象的字符串表示。 返回一个字符串用于描述该对象的。 
       equals(Object obj)   用于比较两个对象的内存地址,判断两个对象是否为同一个对象。
       hashCode()   返回该对象的哈希码值(可以把哈希码就理解成是对象的内存地址)。

    代码示例:

     1 class Person{
     2         
     3     int id;
     4     String name;
     5     public Person(int id, String name) {
     6         this.id = id;
     7         this.name = name;
     8     }
     9     
    10     //通过重写toString方法来修改println打印对象的时候的格式
    11     @Override
    12     public String toString() {
    13         return "编号:"+id+" 姓名:"+name;
    14     }
    15     
    16     //重写equals方法和hashCode方法来更改两个对象相等的条件
    17     @Override
    18     public boolean equals(Object obj) {
    19         Person p = (Person)obj;
    20         return this.id==p.id;
    21     }
    22     
    23     @Override
    24     public int hashCode() {
    25         return this.id;
    26     }
    27 }
    28 
    29 
    30 public class ObjectDome {
    31 
    32     public static void main(String[] args) {
    33         //Object类是所有类的终极父类
    34         Object o = new Object();
    35         //println和toString输出的结果一样,是因为在println方法中默认调用了toString()方法
    36         System.out.println(o); 
    37         System.out.println(o.toString());
    38         
    39         //测试重写toString方法
    40         Person p = new Person(110, "王五");
    41         System.out.println(p);
    42         
    43         //重写equals方法和hashCode方法来更改两个对象相等的条件
    44         Person p1 = new Person(110,"张三");
    45         System.out.println(p1);
    46         Person p2 = new Person(110,"李四");
    47         System.out.println(p2);
    48         System.out.println("p1 == p2 ?"+p1.equals(p2));
    49     }
    50 }
    View Code

    java中的规范:一般我们重写了一个类的equals方法,我们都会重写它的hashCode方法。

    java是开源的,所以查看源代码是最好的学习方式:

    查看源代码的方式:
       方式一: 按住ctrl键,单击你需要看的源代码.
       方式二:把光标移动到你需要查看代码处按下F3.

  • 相关阅读:
    三元判断大小奇偶
    键盘输入 循环 for if-else while 等循环
    三元 导包
    进制
    符号等
    第二模块 4.1 模块的种类和介绍
    第二模块 练习题
    第二模块 3.15 迭代器
    第二模块 3.14 通过生成器实现并发编程
    第二模块 3.13 生成器
  • 原文地址:https://www.cnblogs.com/nicker/p/6203995.html
Copyright © 2020-2023  润新知