SI-6760 The "concrete overrides abstract" rule doesn't apply to Java

WIP this needs more tests!