Eigene Klassen in Java einbinden

sir.hacks.alot

sir.hacks.alot

Aktives Mitglied
Thread Starter
Dabei seit
10.03.2005
Beiträge
2.408
Reaktionspunkte
115
Hallo,

irgendwie verstehe ich den Package und Import Mechanismus von Java noch nicht so richtig.
Wie gehe ich step by Step vor wenn ich eine Klassendatei a und eine Klassendatei b habe die sich beide im gleichen Ordner befinden.
Klasse a enthält die Mainmethode.
wenn ich jetzt in a
Code:
import b;
angebe funktioniert das nicht wie gewünscht.

Also was muss ich warum in den beiden Klassen angeben, damit ich zu dem Ergebnis komme, daß ich in a Objekte der in b definierten Klasse ausprägen kann?

Gruß

Thomas
 
Wenn sie im gleichen Package sind musst du sie nicht importieren
 
Hi,

also wenn sich beide Klassen A und B im selben Package befinden, brauchst du keine Import-Angabe.
Importieren musst du nur, wenn die Klasse, auf die zu zugreifen willst, in einem anderen Package liegt.

Wenn du als Package für beide Klassen ein eigenes Package angelegt hast, musst du noch die "package"-Angabe in deinen Quellcode packen.

Du musst dann nur dafür sorgen, das deine Methoden und Objekte auch außerhalb ihrer Klasse sichtbar sind.
 
Ich lerne gerade Java und habe anscheinend den Package Mechanismus noch nicht so ganz verstanden, da muss ich mich noch mal schlau machen, oder lässt sich das für meinen Fall so einfach erklären?
 
Stimmen denn die Access-Modifier deiner Methoden/Objekte? Also sind sie aus der anderen Klasse heraus sichtbar?

Gemeint sind die Modifier "public", "package", "protected" und "private".

Am schnellsten sagen, was bei dir nicht stimmt, könnte man, wenn du den Quelltext zeigst.

Sehr hilfreich ist zu Beginn sicher das Buch "Java ist auch eine Insel"
 
Stimmen denn die Access-Modifier deiner Methoden/Objekte? Also sind sie aus der anderen Klasse heraus sichtbar?

Gemeint sind die Modifier "public", "package", "protected" und "private".

Am schnellsten sagen, was bei dir nicht stimmt, könnte man, wenn du den Quelltext zeigst.

Sehr hilfreich ist zu Beginn sicher das Buch "Java ist auch eine Insel"

Die Accessmodifier sind wie in der Aufgabe gefordert.
Ich habe noch nie mit Packages gearbeitet und habe bisher deshalb auch in meinen Klassen Dateien angegeben, aber ich mit gerade dabei mich mit den Packages auseinanderzusetzen.

Wenn ich beide Klassen in einer Datei habe läuft das Programm ja schon einwandfrei, ich wollte es nur Zwecks Übersichtlichkeit aufsplitten.
 
Hi,

das die Access-Modifier korrekt (im Sinne der Aufgabe) sind, ist super.
Dies heißt aber nicht, das sie für deine Aufteilung noch korrekt sind.
Du sagst ja selber, die Aufteilung hast du selbst vorgenommen. Da musst du ggf. die Modifier anpassen.
 
Da ich fast ausschliesslich mit public arbeite und nur in einem Fall private nutze sollte es eigentlich keine probleme geben, da die private methode nur von einer anderen Methode der selben Klasse aufgerufen wird.
 
Hi,

das die Access-Modifier korrekt (im Sinne der Aufgabe) sind, ist super.
Dies heißt aber nicht, das sie für deine Aufteilung noch korrekt sind.
Du sagst ja selber, die Aufteilung hast du selbst vorgenommen. Da musst du ggf. die Modifier anpassen.

Das mit den Modifiern ist ja auch eigentlich garnicht mein eigentliches Problem, ich weiss halt immer noch nicht wie ich mit packet arbeite, damit ich aus der einen Datei auf die Andere zugreifen kann. Ich bin hal nur C++ includes gewöhnt.
 
Zurück
Oben Unten