package com.bobby;
//创建一个Vehicle的父类
public class Vehicle {
int paasenger;
}
//创建一个Car的子类
public class Car extends Vehicle {
int passenger = 4;
}
//执行子类
public class initial {
public static void main(String[] args) {
Vehicle obj1 = new Car();
System.out.println(obj1.passenger);
}
}
这是动态绑定的概念,只有在父类的方法被子类重写时,才默认调动子类的方法;不被重写时调用的还是父类的方法,而父类的成员变量是不会被子类重写的,所以调用的是是父类的成员变量的值
三个变量都不一样!怎么可能不报错!!
三个类 要分别分开创建一个类 不是同一个类不能创建在一起 ,还有你父类的int paasenger单词有错,应该是passenger, 这两个错误!
子类要重写父类的方法时,要重新定义父类的方法,为public class Vehicle { int passenger = 4;}。