虚方法
java中虚方法体现的是多态的特性,java的普通成员方法(没有被static、native等关键字修饰)就是虚方法,它本身就实现虚函数实现的功能------多态。
当子类对象调用重写的方法时,调用的是子类的方法,而不是父类中被重写的方法。Java虚方法可以理解为java里所有被overriding的方法都是virtual的。
抽象方法
抽象方法是用abstract修饰的方法,只能声明不能实现,抽象方法必须被声明在抽象类里(反过来,抽象类里不一定要有抽象方法),抽象方法的的作用就是强制子类实现该抽象方法(如果子类不是抽象类的话)。