new与override

来源:互联网 发布:淘宝卖家如何设置打折 编辑:程序博客网 时间:2024/05/20 11:25

 

子类不会继承基类的static函数,但是子类会继承基类的virtual和non virtual函数。
1、由于子类继承了基类的non virtual函数,如果子类认可基类的该方法,可以什么都不做的利用;如果子类认为基类的方法不妥可以进行修正,方法是用new关键字定义同样签名的方法(不使用关键字new会产生警告)。
2、由于子类继承了基类的virtual函数,virtual函数的目的与non virtual函数的目的正好相反,目的是定义自己的方法,让基类去掉用。因此,如果子类想定义自己的方法,让基类掉用,则子类可以用override关键字定义同样签名的方法;如果子类想定义自己的方法(这里指同样签名或者说同样功能的方法),但不希望基类掉用,则可以用new关键字定义同样签名的方法;如果子类根本就不想定义自己的方法,则可以什么也不做(但是abstract函数是个例外)。
原创粉丝点击