Skip to content

Gendarme.Rules.Design.DoNotDeclareVirtualMethodsInSealedTypeRule(git)

Sebastien Pouliot edited this page Mar 2, 2011 · 1 revision

DoNotDeclareVirtualMethodsInSealedTypeRule

Assembly: Gendarme.Rules.Design
Version: git

Description

This rule ensure that sealed types (i.e. types that you can't inherit from) do not define new virtual methods. Such methods would only be useful in sub-types. Note that some compilers, like C# and VB.NET compilers, do not allow you to define such methods.

Examples

Bad example:

public sealed class MyClass {
    // note that C# compilers won't allow this to compile
    public virtual int GetAnswer ()
    {
        return 42;
    }
}

Good example:

public sealed class MyClass {
    public int GetAnswer ()
    {
        return 42;
    }
}

Source code

You can browse the latest source code of this rule on github.com

Clone this wiki locally