rspec/rules/S2387/java/rule.adoc

60 lines
1.1 KiB
Plaintext

include::../description.adoc[]
== Noncompliant Code Example
----
public class Fruit {
protected Season ripe;
protected Color flesh;
// ...
}
public class Raspberry extends Fruit {
private boolean ripe; // Noncompliant
private static Color FLESH; // Noncompliant
}
----
== Compliant Solution
----
public class Fruit {
protected Season ripe;
protected Color flesh;
// ...
}
public class Raspberry extends Fruit {
private boolean ripened;
private static Color FLESH_COLOR;
}
----
== Exceptions
This rule ignores same-name fields that are ``++static++`` in both the parent and child classes. This rule ignores ``++private++`` parent class fields, but in all other such cases, the child class field should be renamed.
----
public class Fruit {
private Season ripe;
// ...
}
public class Raspberry extends Fruit {
private Season ripe; // Compliant as parent field 'ripe' is anyway not visible from Raspberry
// ...
}
----
ifdef::env-github,rspecator-view[]
'''
== Comments And Links
(visible only on this page)
include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]