C#中有没有类似Java的@Override注解这种东西?

C#中有没有类似Java的@Override注解这种东西?
最近新接触C#,在覆写父类方法的时候一直担心写错,所以,C#中没有没类似Java中的@Override注解这样的东西?

例如:

在Java中,A类中有个method方法,B类继承了A类。在B类中我想要重写父类中的method方法,在重写的时候加上@Override注解,Java就会限定这里必须覆盖父类中已有的方法,如果写了父类中没有的方法会报错,这样就可以确保不会因为打错字等原因造成没有重写父类的方法而是创建了一个新的方法。

 class A {
    public void method(){ }
}

class B extends A {
    @Override
    public void method(){ }
}

在C#中,我试过new关键字,但是用了new的时候,即使我写了父类中没有的方法,他也不会报错。

C#中有没有能够做到Java这种功能的类似语句,或者重写父类方法的快捷键?

3个回答

在C#中重写父类的方法,一般是先对父类的方法用virtual将父类相对应的方法变成虚方法,然后再在子类中用public override重新定义与父类相关对应的类。针对你上面的例子则可以写成
class A
{
public virtual void method(){ };
}

class B : A
{
public override void method(){ };
}

C#有override关键字

 public override int foo(){}
qq_21397217
Arvin ZHANG 不是这个,我更新了一下问题,说的比以前清楚了些,麻烦在帮忙看一下,谢谢!
3 年多之前 回复
qq_21397217
Arvin ZHANG 不是这个,我更新了一下问题,说的比以前清楚了些,麻烦在帮忙看一下,谢谢!
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问