Skip to content

Gendarme.Rules.BadPractice.DoNotDecreaseVisibilityRule(git)

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

DoNotDecreaseVisibilityRule

Assembly: Gendarme.Rules.BadPractice
Version: git

Description

The rule detect when a method visibility is decreased in an inherited type. Decreasing visibility does not prevent calling the base class method unless the type is sealed. Note that some language (but not C#) will allow you to seal, e.g. final, the method without an override.

Examples

Bad example:

public class Base {
    public void Public ()
    {
    }
}
public class BadInheritor : Base {
    private new void Public ()
    {
    }
}

Good example (do not hide):

public class Inheritor : Base {
}

Good example (sealed type):

public sealed class Inheritor : Base {
    private new void Public ()
    {
    }
}

Source code

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

Clone this wiki locally