Die Freisetzung von Java 1.5 , auch genannt J2SE 5.0 , sah die Einführung einer Vielzahl neuer und nützlicher Funktionen. Old Java 1.4 -Gurus noch auf sich wirken , aber wenn du eine bist , es ist definitiv wert Ihre Zeit , um einige der Unterschiede zwischen Java 1.5 und Java 1.4 aussehen . Viele Probleme der alten Version wurden behoben . Generics  
 Der größte Unterschied zwischen den beiden Versionen Java ist das neue Feature von Generika . Generika können Sie den Typ eines bestimmten Argument oder mehrdeutig Feld verlassen . Wenn Sie die Klasse instanziieren im Code können Sie angeben, welche Art es verwenden soll. Sie sind praktisch für Datenstrukturen wie Listen oder Bäume , so dass Sie schreiben eine einzige Klasse mit Strukturen von ints , Streichern oder irgendetwas anderes zu tun . 
 Für Loops 
 
 ein weiterer wichtiger Unterschied ist eine Erweiterung für Schleifensyntax . Statt sich mit Iteratoren , können Sie einfach schreiben eine for-Schleife , die automatisch durch jeden Artikel gehen in einem iterable Struktur oder jedes Element in einem Array. 
 Autoboxing und Unboxing 
 
 
 In Java 1.4 , wenn Sie Wrapper-Klassen verwendet für die verschiedenen primitiven Typen , musste man mit ihnen wie jede andere Klasse , mit seiner Konstrukteure und Zugriffsmethoden umzugehen. In Java 1.5 können Sie Instanzen einer Wrapper-Klasse wie eine primitive Art zu verwenden und Java wird wissen, was du meinst. 
 Enums 
 
 Java 1.5 stellt Enumerationen Abkürzung für Aufzählungen . Diese sind grundsätzlich individuell Typen . Wenn Sie eine enum machen , listen Sie die verschiedenen gültigen Werte . Sie können dann Ihre enum wie ein primitiver Typ . Es ist viel besser als das Erstellen von Listen der endgültigen ints für Ihre Konstanten . 
 Array Argumente 
 
 Jetzt gibt es eine neue Syntax für die Übergabe von Arrays als Argumente an Funktionen . Anstelle der Verwendung eines Arrays als Argument , können Sie die neue "..." Syntax . Dann wird anstelle des Baus eines Array übergeben in dem Argument , können Sie einfach eine Liste der Elemente in Ihrer Funktion Anruf und es wird automatisch verpacken sie in ein Array . 
 Static Import 
 < br > 
 Ein weiteres neues Feature ist die Möglichkeit, die statischen Member von Klassen zu importieren. Anstatt schriftlich Schnittstellen, die nur statische Felder , können Sie tatsächlich Klassen mit ihnen schreiben und verwenden Sie nur statische Import. 
 Anmerkungen 
 
 Der letzte große Unterschied zwischen den beiden Java Versionen ist das neue Feature von Meta-Daten Anmerkungen . Dies sind kleine Zettel an den Compiler Sie Ihre Methoden anhängen , sagen sie , um automatisch bestimmte Methoden oder Felder können , oder behandeln das Verfahren anders.