请解释在new与override的区别
2023-07-06
在C# 中,new 关键字可用作运算符或修饰符。new 运算符用于在堆上创建对象和调用构造函数。 new 修饰符用于隐藏基类成员的继承成员。
使用 override 修饰符来修改方法、属性、索引器或事件。重写方法提供从基类继承的成员的新实现。由重写声明重写的方法称为重写基方法。重写基方法必须与重写方法具有相同的签名。不能重写非虚方法或静态方法。重写基方法必须是虚拟的、抽象的或重写的。重写声明不能更改虚方法的可访问性。重写方法和虚方法必须具有相同的访问级修饰符。不能使用下列修饰符修改重写方:new static virtual abstract重写属性声明必须指定与继承属性完全相同的访问修饰符、类型和名称,并且重写属性必须是虚拟的、抽象的或重写的。