Java的API及Object类
Posted yangyang1182
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java的API及Object类相关的知识,希望对你有一定的参考价值。
1、java的API(API: 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); } }
以上是关于Java的API及Object类的主要内容,如果未能解决你的问题,请参考以下文章
Java学习(API及Object类String类StringBuffer字符串缓冲区)