文章42
标签13
分类3

Java基础12

Object类,错误和异常

Object

Object是所有类的超类,所有类都直接或间接继承了Object类。

  • Object提供了一个默认的无参构造函数
  • Object提供方法

Equals [boolean equals(Object obj)]

与”==”的区别

  • 比较基本数据类型: 比较的是两者的值是否相等(不管其数据类型 byte short int long double float…)
  • 比较引用数据类型: 比较的是两者地址是否相等(两个引用是否指向的是同一个对象)

在Object类中,equals默认比较两个对象的地址是否相同,与”==”一致

equals的重写

String等很多类(继承于Object类)对equals进行重写,比较两个字符串内容是否相等

ToString

在Object类中,toString默认打印对象的地址

toString的重写

public class Test {
    public static void main(String[] args) throws Throwable {
        Person person = new Person("张三", "20");
        System.out.println(person);
    }

    static class Person {
        private String name;
        private String age;

        public String getName() {
            return name;
        }

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

        public String getAge() {
            return age;
        }

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

        Person(String name, String age) {
            this.name = name;
            this.age = age;
        }

        public Person() {
        }

        @Override
        public String toString() {
            return "Person{" + "name='" + name + '\'' + ", age='" + age + '\'' + '}';
        }
    }
}

如上述例子,如果没有对toString方法进行重写,打印的结果为person的地址,重写之后为Person{name='张三’, age='20’}

本文作者:GreedRing
本文链接:http://greedring.com/2019/09/03/JavaSE12/
版权声明:本文采用 CC BY-NC-SA 3.0 CN 协议进行许可