1 / 33

Neuerungen in Java 5/6/7

Neuerungen in Java 5/6/7. Überblick. Java 5 neue Sprachfeatures Erweiterungen Klassenbibliothek Java 6 Erweiterungen Klassenbibliothek Java 7 Java wird Open Source Referenzen. Java 5 – neue Sprachfeatures. Generics Autoboxing / Unboxing Enhanced „for“ Loop VarArgs Enums

strom
Download Presentation

Neuerungen in Java 5/6/7

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Neuerungen in Java 5/6/7

  2. Überblick • Java 5 • neue Sprachfeatures • Erweiterungen Klassenbibliothek • Java 6 • Erweiterungen Klassenbibliothek • Java 7 • Java wird Open Source • Referenzen Stefan Bühler für InfoPoint

  3. Java 5 – neue Sprachfeatures • Generics • Autoboxing / Unboxing • Enhanced „for“ Loop • VarArgs • Enums • Static import • Metadata (Annotations) Stefan Bühler für InfoPoint

  4. Java 5 – Generics I • generische Datentypen • ähnlich wie Templates in C++ • Typsicherheit zur Compilezeit • Unterstützung durch Collections Framework; Legacy Code führt zu Compiler-Warnungen Stefan Bühler für InfoPoint

  5. Generics IILegacy Code Stefan Bühler für InfoPoint

  6. Generics IIITypsichere Collections Stefan Bühler für InfoPoint

  7. Generics IVtypsichere Collections (dekompiliert) Stefan Bühler für InfoPoint

  8. Autoboxing / Unboxing I • automatische Umwandlung zwischen elementaren Datentypen und ihren Wrapper-Objekten Stefan Bühler für InfoPoint

  9. Autoboxing / Unboxing IILegacy Code Stefan Bühler für InfoPoint

  10. Autoboxing / Unboxing IIIVereinfachung 1 Stefan Bühler für InfoPoint

  11. Autoboxing / Unboxing IV Vereinfachung 2 Stefan Bühler für InfoPoint

  12. Autoboxing / Unboxing IV Vereinfachung 2 (dekompiliert) Stefan Bühler für InfoPoint

  13. Enhanced „for“ Loop I • „für jedes Element vom Typ <T> in Menge <M>“ • auf eigenen Typen verfügbar durch Implementierung des Interface java.lang.Iterable Stefan Bühler für InfoPoint

  14. Enhanced „for“ Loop II Stefan Bühler für InfoPoint

  15. Enhanced „for“ Loop IIIdekompiliert Stefan Bühler für InfoPoint

  16. VarArgs I • variable Anzahl Argumente in Methoden / Konstruktoren • immer letztes Argument der Methode • immer vom selben Typ Stefan Bühler für InfoPoint

  17. VarArgs II Stefan Bühler für InfoPoint

  18. VarArgs III (dekompiliert) Stefan Bühler für InfoPoint

  19. Enums I • Aufzählungstypen • Aufzählungen sind als Klassen, ihre Werte als Objekte realisiert • können in switch-Statements verwendet werden • Implementieren Comparable und Serializable • Unterstützung durch Collections-Framework (EnumSet, EnumMap) Stefan Bühler für InfoPoint

  20. Enums II Stefan Bühler für InfoPoint

  21. Static import I • erlaubt unqualifizierten Zugriff auf statische Member ohne vom Typ zu erben, der die statischen Member hält • individuell einzelnen Member oder alle statischen Member eines Typs Stefan Bühler für InfoPoint

  22. Static import II Stefan Bühler für InfoPoint

  23. Annotations I • Anbringen von Zusatzinformationen, die zur Compile- und/oder Laufzeit zur Verfügung stehen • erlaubt das Weglassen von handgeschriebenem ‚boilerplate‘ Code, der stattdessen generiert wird • als Applikationsentwickler häufiger „verwenden“ als „definieren“ • Annotations vorgegeben durch JDK / Klassenbibliotheken (z. B. JUnit4) Stefan Bühler für InfoPoint

  24. Annotations II Stefan Bühler für InfoPoint

  25. Java 5 – Erweiterungen Klassenbibliothek • neues Look and Feel 'Ocean‘ • Java Management Extensions (JMX) • Anpassung und Erweiterung des Collection Framework (u. a. Queue, Generics) • Concurrency Framework • Formatted Input / Output Stefan Bühler für InfoPoint

  26. Ocean Metal Look and Feel Stefan Bühler für InfoPoint

  27. Java 6 – Erweiterungen Klassenbibliothek • JDBC 4.0 • Anpassung und Erweiterung des Collection Framework (u. a. Deque) • Scripting Schnittstelle • .NET interoperabler Webservice per Annotation • System Tray Unterstützung • Splash Screen Unterstützung Stefan Bühler für InfoPoint

  28. JDBC 4.0 Stefan Bühler für InfoPoint

  29. Scripting Schnittstelle Stefan Bühler für InfoPoint

  30. .NET interoperabler Webservice per Annotation I Stefan Bühler für InfoPoint

  31. .NET interoperabler Webservice per Annotation II Stefan Bühler für InfoPoint

  32. Java 7 – Java wird Open Source • Freigabe aller wesentlichen JDK-Quelltexte der SE bis Mitte 2007 (GPLv2, Classpath exception) • bereits verfügbar: javac, HotSpot VM, JavaHelp • Marke Java und Logo bleiben geschützt Stefan Bühler für InfoPoint

  33. Referenzen • Java 5 Docs http://java.sun.com/j2se/1.5/ • Java 6 RC Docs http://java.sun.com/javase/6 • Free and Open Source Java FAQ http://www.sun.com/software/opensource/java/faq.jsp Stefan Bühler für InfoPoint

More Related