1、抽象方法实际上可以理解为是一种虚方法,可以被重载,不同之处是抽象方法必须被子类重载,而虚方法可以被重载,也可以不被重载,意思就是说抽象方法是基类设计者认为该类必须实现的功能,例如设计一个人的类时,吃饭就必须被重载,因为如果不吃饭人就会死,但是可能有人吃米饭,有人吃馒头;但是在学C#时觉得应该是共同部分多的统一方法应该用虚方法,改起来简单;同一个方法实现起来完全不一样就用抽象方法,这个解释好像更自然,更合理
2、delphi中除了虚方法还有一种称之为动态方法的方法,印象里好像跟虚方法类似,只是一个先绑定还是候绑定的问题。好像C#中没有看到。
3、抽象类中可以存在非抽象方法,这是什么原因呢?