# Remove Modifiers in Interface Properties
# Properties
Property | Value |
---|---|
Rule ID | RemoveModifiersInInterfaceProperties |
First seen in jSparrow version | 3.3.0 |
Minimum Java version | 1.1 |
Remediation cost | 1 min |
Links |
# Description
By default, the attributes declared in Java interfaces are public
.
This rule, removes the public
modifiers from method declarations and public static final
modifiers from field declarations in interfaces.
Note, from Java 9 it is possible to have private
methods (opens new window) in interfaces, too.
# Benefits
Removes the clutter and unifies the attributes of Java interfaces.
# Code Changes
Pre
public interface InterfaceWithProperties {
public String FIELD_WITH_PUBLIC_MODIFIER = "";
public static String FIELD_WITH_PUBLIC_STATIC_MODIFIER = "";
public static final String FIELD_WITH_PUBLIC_STATIC_FINAL_MODIFIER = "";
void method();
public void publicMethod();
public static void publicStaticMethod() {
}
public default void publicDefaultMethod() {
}
}
Post
public interface InterfaceWithProperties {
String FIELD_WITH_PUBLIC_MODIFIER = "";
String FIELD_WITH_PUBLIC_STATIC_MODIFIER = "";
String FIELD_WITH_PUBLIC_STATIC_FINAL_MODIFIER = "";
void method();
void publicMethod();
static void publicStaticMethod() {
}
default void publicDefaultMethod() {
}
}
Automatic Application of This Rule
The automatic application of this rule is supported in the following jSparrow version:
# Tags
Tags
1
You & jSparrow