2016-08-03 11 views
0

Ich dachte, ich Begriff der Klasse (Objekt) die Klasse verstehen, sondern um es in Java API zu lesen, fand ich dies:Verbindung zwischen Klasse und primitiven Typen?

Die primitiven Java-Typen (boolean, byte, char, short, int, long, float und double) und das Schlüsselwort void werden ebenfalls als Objekte der Klasse dargestellt.

+1

https://docs.oracle.com/javase/7/docs/api/java /lang/Void.html 'Die Void-Klasse ist eine nicht löschbare Platzhalterklasse, die einen Verweis auf das Klassenobjekt enthält, das das Java-Schlüsselwort void darstellt. –

+1

https://docs.oracle.com/javase/8/docs/api/java /lang/Integer.html#TYPE – fabian

+2

Worüber genau fragen Sie sich? Ich meinte, Sie bekommen nicht den Sinn von Objekt und Klassenkonzept ODER primitiven Klassen? – NawaMan

Antwort

1

Das Phänomen auf autoboxing und outboxing ist, was Sie suchen. In Java gibt es einige Primitive für Komfortzwecke. Sie haben alle wrapper Klassen. Diese sind: Integer', Doppel , Boolean` usw.

Autoboxing ist verantwortlich für die Verpackung primitive s in Wrapper s jedes Mal, wenn die Wrapper erwartet, aber ein primitive geleitet wird. Auf der anderen Seite kommt Unboxing. Wenn es ein primitive erwartet, aber Wrapper übergeben Unboxing wird es schaffen, den richtigen Wert zu extrahieren.

ist es gut here beschrieben

Beispiel:

Integer one = new Integer(1); 
int i = one.intValue(); 

void printInteger(int i) { 
    System.out.println(i); 
} 

printInteger(one); 

keine Ausnahme ausgelöst wird - one wird int und gedruckt unboxed sein.

+0

Hier geht es nicht um Autoboxing. Die Klassen Integer usw. waren von Anfang an auf Java vorhanden. Nicht erst seit Autoboxing eingeführt wurde. – gsl

+0

@gsl Ich kann zustimmen, dass es nicht ** nur ** über Autoboxing ist. Als es in 'Java 1.5' eingeführt wurde, benutzen wir es alle. – xenteros

-1

Der Unterschied ist, dass die Primitiven nur Speicherzonen sind und wenn Sie die Schlüsselfunktionen verwenden, sagen Sie dem Compiler, wie diese Bereiche zu sehen sind. Während mit den entsprechenden Objekten wie Integer oder Character sind Objekte, die Methoden haben, mit diesen Typen zu arbeiten und sie als solche als Objekte

Verwandte Themen