| 

.NET C# Java Javascript Exception

6
Ich entwickle Anwendungen in der Regel mit C# und habe mir aus Interesse ein Buch zu Java zugelegt. Dort habe ich gefunden, das Klassen ebenso wie in .NET entsprechend Namensräumen über eine import-Anweisung importiert werden können. Beide Varianten haben den Vorteil, das auf Methoden und untergeordnete Klassen ohne jeweilige Angaben im Quelltext zugegriffen werden kann.

import java.paket.klasse;


Alternativ soll es in Java möglich sein, mehrere Klassen mit * (per Wildcard) anzugeben:

import java.paket.*;


Unter .NET ist der Zugriff auf bestimmte Klassen trotz der jeweiligen Namespace-Anbindung nicht immer ohne besagte Namensangabe möglich. Wie sieht es hier eigentlich in Java - insbesondere auch bei der Wildcard-Angabe - aus? Und gibt es eigentlich einen entsprechenden Begriff zu den Namespaces unter .NET auch in Java? Einige Klassen sind unter java auch ohne import-Anweisung nutzbar (Datentypen, java.lang, String, Object). Wo finde ich eine iste, wo die direkt nutzbaren Klassen aufgelistet sind?
23.01.2012
aboyd 71 1
Denkst Du bitte auch daran, bei dieser wie auch bei Deinen beiden vorigen Fragen durch Bewertungen und/oder Kommentare Feedback zu geben? Danke!
Matthias Hlawatsch 24.01.2012
2 Antworten
1
Namespaces heißen in Java Packages. Ohne import-Anweisung und ohne package-Angabe nutzbar sind die Klassen aus java.lang sowie die integralen Datentypen (int, boolean usw.).

Die Namensauflösung ist in Java für meine Begriffe einfacher gelöst als in .NET. Entweder eine Klasse wird durch eine import-Anweisung erfaßt (explizite Angabe oder mit Wildcard), oder der komplette package-Name muss im Code angegeben werden.
23.01.2012
Matthias Hlawatsch 8,4k 2 8
1
Was es auch noch gibt sind static imports.
Dies wird häufig für Klassen verwendet, die nur Konstanten beinhalten.
Durch einen static import können statische Variablen oder statische Funktionsaufrufe der Klasse importiert werden. Auf diese kann dann ohne Voranstellung des Klassennamens zugegriffen werden.

import static de.mein.package.Klasse.*
24.01.2012
Vayu 646 1 3
Vayu 646 1 3

Stelle deine Java-Frage jetzt!