sto ottenendo l'errore SonarQube che: "Calling the super.finalize()
alla fine di questa implementazione del metodo è altamente raccomandato nelle implementazioni caso genitore deve anche disporre delle risorse di sistema."Perché chiamare super.finalize() è preferito quando si sostituisce il metodo finalize()?
Ma ho scoperto che Object
classe ha alcuna implementazione per il metodo finalize.
protected void finalize() throws Throwable { }
Quindi, perché è necessario chiamare super.finalize()
?
Ci potrebbero essere altre classi nella gerarchia di classe che si trovano tra la classe e 'Oggetto' – JonK
Hai ragione, ma in questo caso SonarQube dovrebbe prenderlo prima di generare un avviso! – egelev
Seriamente, hai guardato cosa dice sonarQube? - ** nel caso in cui le implementazioni genitore debbano disporre anche di alcune risorse di sistema ** – TheLostMind