Java: interface de design para forçar implementações a substituir toString
Estou desenvolvendo um SPI e gostaria de definir umReportable
interface tal que qualquer implementação deve substituirtoString()
para algo que é significativo.
Existe alguma maneira em Java para escrever uma interface de tal forma que qualquer uma das suas implementações concretasdevo substituir ObjetotoString()
? Por exemplo:
<code>public interface Reportable { public String toString(); } public class Widget implements Fizz, Buzz, Reportable { // ... @Override public String toString() { // ... } } </code>
Eu sei que o código acima nãoforça esse tipo de comportamento, mas é um exemplo do que estou procurando, ou seja, seWidget
não substituitoString()
você recebe um erro de compilação porque está violando o contrato da interface.