rspec/rules/S4025/csharp/rule.adoc
2020-12-23 14:59:06 +01:00

53 lines
819 B
Plaintext

include::../description.adoc[]
== Noncompliant Code Example
----
public class Fruit
{
protected string plantingSeason;
//...
}
public class Raspberry : Fruit
{
protected string plantingseason; // Noncompliant
// ...
}
----
== Compliant Solution
----
public class Fruit
{
protected string plantingSeason;
//...
}
public class Raspberry : Fruit
{
protected string whenToPlant;
// ...
}
----
Or
----
public class Fruit
{
protected string plantingSeason;
//...
}
public class Raspberry : Fruit
{
// field removed; parent field will be used instead
// ...
}
----
== Exceptions
This rule ignores same-name fields that are ``static`` in both the parent and child classes. It also ignores ``private`` parent class fields, but in all other such cases, the child class field should be renamed.