Java的API及Object类

1、java的APIAPI: Application(应用) Programming(程序) Interface(接口)

 (1)

Java API就是JDK中提供给我们使用的类,这些类将底层的代码实现封装了起来,我们只要学会这些类如何使用即可。

JDK安装目录下有个src.zip文件,这个文件解压缩后里面的内容是所有Java类的源文件。可以在其中查看相对应的类的源码。

就是发给我们的这个应用:

 (2)object类:

Object类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。所有类在创建对象的时候,最终找的父类就是Object

 (3)equals方法

--------------------equals方法,用于比较两个对象是否相同(使用两个对象的内存地址在比较)

比较两个对象是否相同,经常会根据对象中的属性值进行比较,也就是在开发经常需要子类重写equals方法根据对象的属性值进行比较

 注意:

复写Object中的equals方法时,一定要注意public boolean equals(Object obj)的参数是Object类型,在调用对象的属性时,一定要进行类型转换,在转换之前必须进行类型判断。

(4)toString方法

toString方法返回该对象的字符串表示,其实该字符串内容就是对象的类型+@+内存地址值。

toString方法返回的结果是内存地址,而在开发中,经常需要按照对象的属性得到相应的字符串表现形式,因此也需要重写它。

 ========================================================================================================================================

equals和toString 方法应用举例说明:

public class Person {
    private String name;
    private int age;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public Person(String name, int age) {
        super();
        this.name = name;
        this.age = age;
    }
    public boolean equals(Object obj) {
        if(obj==null){
            return false;
        }
        if(obj==this){
            return true;
        }
        if(obj instanceof Person){
            Person p=(Person)obj;
        return this.getAge()==p.getAge();
        }
        return false;
    }
    /*@Override
    public String toString() {
        String mes="姓名为"+this.getName()+"年龄为"+this.getAge();
        return mes;
    }*/
    @Override
    public String toString() {
        return "Person [name=" + name + ", age=" + age + "]";
    }
}
package demo06;

import java.util.ArrayList;

public class Test {

    public static void main(String[] args) {
    Person p1=new Person("小红",18);
    Person p2=new Person("小明",19);
    //Object类中的equals方法比较的是地址
    System.out.println(p1.equals(p2));
    System.out.println(p1.toString());//toString()方法可写可不写,是默认的
    ArrayList<String> list=new ArrayList<String>();
    System.out.println(list);
    
    }
}
原文地址:https://www.cnblogs.com/yang1182/p/9708015.html