如果有些方法被调用了,那程序就有问题了,实际上基类的意图是要为所有由它派生出来的类创建一个公共的接口。要创建这种公共接口的唯一原因就是,各个子类要用它自己的方式来实现这个接口。它定义了一个基本的形式,你可以说这是所有的派生类所公有的。还有一种说法,就是基类是一个“抽象的基类或简化为抽象类”。
当你想要通过一个公共的接口来操控一组类的时候,就可以使用抽象类了。通过动态绑定机制,那些符合方法特征的派生类方法将会得到调用。如果方法名同基类的相同,而参数列表不同,那就变成重载了,这大概不是你想要的结构吧。