0
点赞
收藏
分享

微信扫一扫

Java系列(25)——Object


本系列博客汇总在这里:Java系列_汇总


目录

  • ​​一、Object 的概述​​
  • ​​二、Object 的几个重要方法​​
  • ​​1、object 下的 tostring 方法​​
  • ​​2、Object 下的 hashCode 方法​​
  • ​​3、Object 下的 equal 方法​​
  • ​​三、单例模式下的对象比较​​

一、Object 的概述

  1. Object 是所有类的根类,所有类都是直接或者间接的去继承 object 类。
    Java系列(25)——Object_对象比较
  2. 类 object 是类层次结构的根类。每个类都使用 object 作为超类。所有对象(包括数组),都实现这个类的方法。
    Java系列(25)——Object_单例模式_02
    java.lang.object 类是默认被每一个类继承的,所以一个类是可以直接调用 object 下的方法的。

二、Object 的几个重要方法

1、object 下的 tostring 方法

  1. API 中的说明
    Java系列(25)——Object_java_03

  2. 示例

    class Student
    {

    }
    class Welcome
    {
    public static void main(String[] args)
    {
    //创建一个学生实例
    Student st = new Student();
    //直接打印这个对象是默认调用从父类Object继承下来的toString方法
    System.out.println("直接打印对象:"+st);
    }
    }

    Java系列(25)——Object_Object_04

  3. toString 方法的重写

    /**
    *java.lang.object类是默认被每一个类继承的
    */

    //class Student extends Object{
    class Student
    {
    private String name;

    private int age;

    private String gender;

    public Student()
    {
    super();
    }

    public void setName(String name)
    {
    this.name = name;
    }

    public String getName()
    {
    return name;
    }

    public void setAge(int age)
    {
    this.age = age;
    }

    public int getAge()
    {
    return age;
    }

    public void setGender(String gender)
    {
    this.gender = gender;
    }

    public String getGender()
    {
    return gender;
    }

    //重写object里面的方法toString
    public String toString()
    {
    return this.name + "-" + this.age + "-" + this.gender;
    }
    }
    class Welcome
    {
    public static void main(String[] args)
    {
    Student st = new Student();
    st.setName("张三");
    st.setAge(18);
    st.setGender("男");

    String str = st.toString();
    System.out.println(str);
    }
    }

    Java系列(25)——Object_单例模式_05

2、Object 下的 hashCode 方法

  1. API 中的说明Java系列(25)——Object_java_06
  2. 示例源码
  3. class Student
    {

    }
    class Welcome
    {
    public static void main(String[] args)
    {
    //创建一个学生实例
    Student st = new Student();
    //直接打印这个对象
    System.out.println("直接打印对象:"+st);
    //打印对象的哈希值
    System.out.println("对象哈希值:"+st.hashCode());
    }
    }
  4. Java系列(25)——Object_java_07

3、Object 下的 equal 方法

  1. API 中的说明
    Java系列(25)——Object_对象比较_08
  2. 示例源码
  3. class Student 
    {

    }
    class Welcome
    {
    public static void main(String[] args)
    {
    Student st1 = new Student();
    Student st2 = new Student();

    if(st1.equals(st2))
    {
    System.out.println("st1和st2是同一个对象");
    }
    else
    {
    System.out.println("st1和st2不是同一个对象");
    }
    }
    }
  4. Java系列(25)——Object_单例模式_09

三、单例模式下的对象比较

  1. 示例源码
  2. class Student 
    {
    private static Student s = new Student();
    private Student()
    {

    }

    public static Student test()
    {
    return s;
    }
    }
    class Welcome
    {
    public static void main(String[] args)
    {
    Student st1 = Student.test();
    Student st2 = Student.test();

    if(st1.equals(st2))
    {
    System.out.println("st1和st2是同一个对象");
    }
    else
    {
    System.out.println("st1和st2不是同一个对象");
    }
    }
    }
  3. Java系列(25)——Object_java_10

如有错误,欢迎指正!



举报

相关推荐

JAVA——Object

java:Object类

Java的Object

【Java】Object类

java 接口&Object

0 条评论