Was ist das für ein Konstrukt

GetIT

Mitglied
Hallo,

ich lese grad das Buch "Java ist auch eine Insel" von Christian Ullenboom und bin da auf eine merkwürdiges Konstrukt gestoßen:

Java:
public final static Comparator<Person> PERSON_FIRSTNAME_COMPARATOR = new Comparator<Person>() {

	@Override                                                                            
	public int compare(Person p1, Person p2) {
		return p1.firstname.compareTo(p2.firstname);
	}
};

Was bedeutet die erste Zeile?

Also das mit den Generics ist klar, und der Anfang "public final static" und dann die runden Klammern deuten ja auf eine Methode hin. Aber was soll dann die Konstante, der Konstruktoraufruf und die geschweiften Klammern mit ";" ?
 
Zuletzt bearbeitet von einem Moderator:
Zuletzt bearbeitet:
Du erzeugst eine neue Instanz einer anonymen Klasse, diese Instanz hat den Namen PERSON_FIRSTNAME_COMPARATOR.
Die Klasse ist aber weiterhin anonym
 
Du weist der Variable "PERSON_FIRSTNAME_COMPARATOR" eine Comparator-Instanz zu. Wie ist denn der Name der Klasse, die hier das Comparator-Interface implementiert?
 

Neue Themen


Zurück
Oben