学习Javase的时候,对于继承的理解感觉不是十分的透彻,在研究过程中发现一些结论,自己浅浅记录一下
父类:
public abstract class Weapon {
String name="武器";
boolean move;
boolean attack;
public void ww(){
System.out.println("父类武器");
}
}
子类:
public class plane extends Weapon{
String name="飞机";
boolean move=true;
boolean attack=true;
@Override
public void ww() {
System.out.println("子类武器");
}
}
建立父类数组进行存放子类元素
public class jiChengTest {
public static void main(String[] args) {
plane p=new plane();
Weapon[] W=new Weapon[]{new plane()};
System.out.println(W[0].name);
plane[] p=new plane[]{new plane()};
System.out.println(p[0].name);
}
}
武器
飞机
子类与父类具有同名属性,将子类存放到数组中时,调用数组元素的属性,取决于数组的类型,
父类型的数组则调父类的属性,子类型的数组则调子类的属性
使用于“取决于左边是谁”