如果子类想要重写父类的方法 使用virtual方法 并且子类要用override 如果子类还想使用父类的方法 子类中使用base方法 如果子类不需要调用父类则用abstract抽象方法 里面可以是抽象方法也可以是非抽象方法 但是如果里面有抽象方法的类那它必须是抽象类 如果不需要用到父类中的方法 则父类用override方法 子类中可以用base方法调用父类中的方法 也可以用this调用 区别:一个调用的是父类的方法,一个调用的是子类自己的方法 如果父类选择的是abstract抽象方法 则子类同方法必须重写 如果是virtual虚方法 则子类中同方法未必需要重写 抽象类中可以没有任何抽象成员 抽象类不能被new 实例化 如果父类是抽象类 子类也是抽象类 则子类不一定需要重写抽象方法 子类能重写父类abstract和virtual方法 孙子类还可以重写override类重写 sealed类不能被继承 如果父类是virtual虚方法 则必须要有实现 哪怕就是空的{}方法,以便子类重写 但如果父类是abstract抽象方法 则未必需要方法的实现 可以没有空括号