home  |  suche  |  kontakt/johner  |  institut 
studierende  |  tech-docs  |  mindmailer 

Autoboxing

Mit Autoboxing werden primitive Datentypen automatisch in entsprechende Objekte (z.B. int -> Integer) und umgekehrt konvertiert. Dies verkürzt den Code, da das Erzeugen der Objekte (z.B. new Integer(i)) und das Umwandeln in den primitiven Datentyp (z.B. anInteger.intValue()) enfällt.

Beispiel:

01 package org.johner.java5;
02 
03 import java.util.Hashtable;
04 
05 public class Autobox {
06   public static void main (String[] args) {
07     //1. Konvertierung Objekt => primitiver Datentyp 
08     System.out.println("Das Ergebnis ist " (new Integer(1new Integer(2)));
09 
10     //2. Konvertierung primitiver Datentyp => Objekt
11     Hashtable table = new Hashtable();
12     table.put(12);
13   }
14 }

Static imports

Die import-Statements können nun nicht nur Klassen, sondern auch statische Methoden importieren. Syntax

 

import static <Klassenname>.<Methodenname>

 

Beispiel

 

import static java.lang.Math.sqrt;

 

Falls der Methodenname durch ein Asterix (*) ersetzt wird, werden alle statischen Methoden importiert. Dies hat jedoch mit Eclipse 3.1M4 nicht geklappt.

Das folgende Beispiel setzt eine Klasse Student voraus, die über die statische Methode sayHello(String arg) verfügt:

01 package org.johner.java5;
02 import static org.johner.java5.Student.*;
03 
04 public class StaticImports {
05 
06   public static void main(String[] args) {
07     //Bisher: 
08     Student.sayHello("Studis");
09     
10     //Neu
11     sayHello("Studierende!");
12   }
13 }