其实上这就是类加载体系结构,Object中的很多方法都是native的,通过jni调用本地c语言函数库来实现
LZ,所有对象(包括数组)都实现这个类的方法,你常常写的java程序就是Object的子类,一旦执行主线程main()直接加载到解释器上面了
继承?Object是根类,难道它还有父类? java的API 中的所有类都是Object的子类,这就是类继承加载结构,LZ不懂?Object的子类完全可以重写
Object运行类的方法,例如 toString() 打印对象堆区的数据
class A{
private int a;
private String b;
A(int a,String b){
this.setA(a);
this.setB(b);
}
protected void setA(int a){
this.a=a;
}
protected int getA(){
return a;
}
protected void setB(String b){
this.b=b;
}
protected String getB(){
return b;
}
public String toString(){ //重写Object的toString() 方法
return this.getA()+","+this.getB();
}
}
实现接口 完全可以啊,知道解耦么?
Object的clone() 方法没实现接口 ,子类要实现克隆,该类的对象 原始类必须实现 Cloneable接口
class Person implements Cloneable{
...... // 这里就不写了,LZ应该懂滴
}
pulic class Test{
public static void main(String[] args){
Person p1=new Person();
Person p2=p1.getClass().Clone(); //注意 p1!=p1.getClass().Clone() p2.getClass()==p1.getClass()
}
}
|