Wir wissen, dass es in Java mehrere veraltete Elemente gibt.
Werden sie entfernt? Wurden veraltete Elemente jemals aus Java entfernt?
Werden sie entfernt?
Es ist unwahrscheinlich, dass Java immer rückwärtskompatibel war, aber es kann passieren. Ich sehe Abwertungen als Warnung, dass die API entweder unzuverlässig oder irgendwie schwerwiegend fehlerhaft ist. ( Thread hat mehrere davon.)
Wurde eines der veralteten Elemente in der Vergangenheit aus Java entfernt?
AFAIC wurde nicht entfernt, aber niemals Thread.destroy()
implementiert, da es zusammen mit einigen anderen Thread-Methoden inhärent unsicher war.
Diese Frage wurde woanders gestellt.
Was das Java-Team normalerweise tut, ist, die Methode abzulehnen und stattdessen ihre Implementierung in die vorgeschlagene Methode zu entfernen. Die veraltete Methode ist nur eine nicht implementierte Methode.
Laut der Dokumentation hier.
Sie können sehen, dass es
heißtEin Programmelement, das mit @Deprecated versehen ist, wird von der Verwendung von Programmen abgeraten, weil es normalerweise gefährlich ist oder weil eine bessere Alternative existiert.
Eine veraltete Methode oder Klasse ist also im Grunde genommen eine ältere Methode oder Klasse, von deren Verwendung abgeraten wird, da es neuere, logischere Wege gibt, diese Aktion auszuführen.
Werden diese Methoden jemals entfernt?
Wahrscheinlich nicht. Es wird weiterhin so funktionieren wie vor der Vernachlässigung, man muss sich nur mit der nervtötenden Warnung herumschlagen. Damit ältere Programme weiterhin korrekt ausgeführt werden und nicht aktualisiert werden, werden fast alle veralteten Klassen und Methoden aus diesem Grund nicht entfernt.
Veraltete APIs sind Schnittstellen, die nur aus Gründen der Abwärtskompatibilität unterstützt werden. Der javac-Compiler generiert immer dann eine Warnmeldung, wenn eine dieser Funktionen verwendet wird, es sei denn, die Befehlszeilenoption -nowarn wird verwendet. Es wird empfohlen, Programme zu ändern, um die Verwendung von veralteten APIs zu verhindern. Es gibt jedoch keine Pläne, solche APIs - mit Ausnahme von JVMDI und JVMPI - vollständig aus dem System zu entfernen.
Wurden veraltete Elemente entfernt?
In der Klasse Java. * nein. Es gab einige Änderungen in der Klasse javax. *, Aber in regulärem Java wurde nie eine veraltete Methode oder Klasse entfernt.
Tags und Links java deprecated