Java——API文档
Sun下载JDK--解压缩--javadoc文件(Constuctor Summary[构造方法]+Method Summary[方法])
【Object】
Object类是所有Java类的根基类。
----clone();
----equals(Object o);
----finalize();
----getClass();
----hashCode();
----notify();
----notifyAll();
----toString();
【toString方法】
public String toString(); //返回值为String类型
----官方文档推荐所有的类重写该方法
----默认实现为:getClass().getName() + "@" + Integer.toHexString(hashCode());
<1>在进行String与其他类型数据的连接操作时(例如System.out.println("A:"+a)),将自动调用该对象类的toString方法。
System.out.println("A:"+a)=System.out.println("A:"+a.toString())
【hashCode方法】
JVM在运行时需要找到内存中对象的地址,我们会用一张表记录对象的位置,这张表一般会用哈希编码记录(每个对象都有 自己独一无二的哈希编码,根据这个编码可以独一无二地确定对象及其位置)。
【equals方法】
注意:区分地址比较和值比较
A a = new A();
B b = new B();
System.out.println(a=b);
//这里比较的是地址(new出来的两个对象不可能相等)
System.out.println(a.equals(b));
//此时仍然会返回false,其实现方法仍然不是值比较,应自己重写equals方法
public boolean equals(Object obj){
if(0bj == null) return false;
else{
if(obj instanceof A){
A a = (A) obj;
if(a.*==b.*){ //比较属性
return true;
}else{
return false;
}
}
}
}
if(0bj == null) return false;
else{
if(obj instanceof A){
A a = (A) obj;
if(a.*==b.*){ //比较属性
return true;
}else{
return false;
}
}
}
}