virtual和new关键字应该放在public前还是后呢?其它地方看到的都是public virtual void***,两种写法一样吗?
题主所指的new是子类里隐藏父类方法的关键字,不是新建实例关键字。
virtual是虚函数关键字,修饰父类里的函数,子类可以用override重写该函数。
virtual一般用在父类里,new一般用在子类里,其是成员修饰符。public是访问修饰符,用来限制访问权限。
在c#里还有一种修饰符是类修饰符,例如:abstract。
书写顺序习惯上一般是:访问修饰符 + 类修饰符,或者:成员修饰符 + 类修饰符
但是不按照上面的顺序书写,编译器也不会报错,只是不太常用而已。
virtual是虚方法的,当子类继承基类的时候可以OverWrite重写方法。new关键字只是新建一个对象;
两种写法是一样的。