对一个对象的概念定义可以使用最准确的类型,也可以使用他的父类,但是过于细致的类型会“啰嗦”,要适度,具体看程序需求
class A extends Object{...} //任何的类都可以继承于Object(万物皆类)
class B extends A{...} //B继承与A----》B是A
class C extends B{ //C继承于B-----》C是B
main(){
A a = new C();
Object o= new A(); //抽象可以提高适应性和扩展性
Object o2 = new int[0];
}
}
}
注意变量类型转换
Order o = new BOrder();
AOrder a = (AOrder) o; //o的类型没有变,应该把(。。)理解为一种运算,给了类型为AOrder的a一个新的值