Importieren von Klassen [Anfängerfrage]

Status
Nicht offen für weitere Antworten.

Gama

Mitglied
Ich lerne gerade Java mit dem Buch "Jetzt lerne ich Java".
Wahrscheinlich bin ich einfach zu blöd dafür. :? ^^

Ich habe folgende Beispiele aus dem Buch übernommen:

Datei CMitarbeiter.class:

Code:
public class CMitarbeiter
 {
 String m_name;
 String m_vorname;
 int m_gehalt;    
 
 public CMitarbeiter(String pName, String pVorname, int pGehalt)
 
 {
 m_name = pName;
 m_vorname = pVorname;
 m_gehalt = pGehalt;
 }

 public void datenAusgeben()
 {
 System.out.println("\n");
 System.out.println("Name    : " + m_name);
 System.out.println("Vorname : " + m_vorname);
 System.out.println("Gehalt  : " + m_gehalt +
                                     " EUR" );
 }

 public void gehaltErhoehen(int pErhoehung)
   {
  m_gehalt += pErhoehung;
 }
}

und die 2. Datei (CMitarbeiterVerwaltung.class):

Code:
import CMitarbeiter;

public class CMitarbeiterVerwatung
{
	public static void main(String[] args)
	{
		CMitarbeiter[] personalliste = new CMitarbeiter[4];
		int mitarbeiterzahl;
		
		personalliste[0] = new CMitarbeiter("Marx", "Groucho", 8000);
		personalliste[1] = new CMitarbeiter("Marx", "Chico", 7000);
		personalliste[2] = new CMitarbeiter("Marx", "Harpo", 7000);
		personalliste[3] = new CMitarbeiter("Marx", "Zeppo", 7000);
		mitarbeiterzahl = 4;
		
		// alle Mitarbeiter ausgeben
		for(int i = 0; i < personalliste.length; i++)
			personalliste[i].datenAusgeben()
		                                             

	}
	
}

Beim Kompilieren passiert folgendes:

http://www.java-forum.org/de/userfiles/user13378/Screeeen.png

Warum klappt das Importieren der Klasse CMitarbeiter nicht, obwohl beide Dateien sich im selben Verzeichnis befinden?
 

diggaa1984

Top Contributor
wenn sich beide im selben Verzeichnis befinden brauchst du diese nicht importieren, das sollte ohne gehen.
 

musiKk

Top Contributor
Zunaechst: Wenn das nur was kleines mit wenigen Klassen wird, dann den Hinweis meines Vorgaengers verwenden. Falls du dennoch importieren willst, kannst du weiterlesen... ;)

Du musst erst einen Paketnamen angeben.

Das muss vor jedem import stehen. Vor deine Klassendefinition von CMitarbeiter in deinem Fall. Also z. B.
Code:
package foobar;

public class CMitarbeiter
...

Dann in der anderen Datei
Code:
import foobar.CMitarbeiter;

public class CMitarbeiterVerwatung
...
oder
Code:
import foobar.*;

public class CMitarbeiterVerwatung
...
wenn da mehrere Klassen sind und du die alle importieren willst.

Das ist allerdings nur die halbe Tuecke. Jetzt kommt es naemlich darauf an, dass die Ordnerstruktur stimmt. Die Hierarchie, die du mit dem package-Keyword aufbaust, muss der Ordnerstruktur entsprechen. Selbige kann naemlich auch aus mehreren durch Punkten getrennten Bezeichnern bestehen. Z. B.
Code:
package foo.bar;

public class CMitarbeiter
...
und
Code:
import foo.bar.CMitarbeiter;

public class CMitarbeiterVerwatung
...

Jetzt muss im "Hauptverzeichnis" die Java-Datei mit der Klasse CMitarbeiterVerwatung (was sicher Verwaltung heissen soll) sein, in diesem Verzeichnis der Ordner foo, in diesem der Ordner bar und in diesem dann die Java-Datei mit CMitarbeiter. Ansonsten fliegen dir irgendwelche "not founds" um die Ohren... kanns grad nicht testen.
Also z. B.:
Code:
CMitarbeiter.java
foo/bar/CMitarbeiterVerwatung.java

Die Verwaltung von Klassen in Packages ist auf jeden Fall sinnvoll, wenn man an groesseren Projekten arbeitet. Erstellt man nur ein zwei Klassen um etwas auszuprobieren, dann sind das natuerlich Kanonen auf Spatzen.

Hoffe, das war halbwegs verstaendlich.
 

Gama

Mitglied
Die Verwaltung von Klassen in Packages ist auf jeden Fall sinnvoll, wenn man an groesseren Projekten arbeitet. Erstellt man nur ein zwei Klassen um etwas auszuprobieren, dann sind das natuerlich Kanonen auf Spatzen.

Ist trotzdem gut, dass ich das jetzt wenigstens im "Kleinen Rahmen" verstanden habe. Es funktioniert jetzt, dank ausführlicher Erklärung mit import Befehl und ohne.
Außerdem enthielt der Quelltext von CMitarbeiterVerwaltung noch einen Fehler:

Code:
personalliste[i].datenAusgeben()

Das ; fehlte... :?


Vielen Dank für die Hilfe und ausführliche Erklärung!!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D importieren eigener Klassen Java Basics - Anfänger-Themen 12
JavaNewbie2.0 Strings in andere Klassen importieren. Java Basics - Anfänger-Themen 2
U Klassen Eigene Klassen importieren Java Basics - Anfänger-Themen 13
J importieren von selbst definierten klassen Java Basics - Anfänger-Themen 10
pindakaas Klassen Importieren Java Basics - Anfänger-Themen 7
H OOP Klassen importieren Java Basics - Anfänger-Themen 3
J Subklasse soll alle Klassen/Pakete der Superklasse importieren Java Basics - Anfänger-Themen 3
T Klassen importieren Java Basics - Anfänger-Themen 13
A problem: importieren von eigenen klassen Java Basics - Anfänger-Themen 3
D Eigene Klassen importieren Java Basics - Anfänger-Themen 9
D maven dependencies re-importieren in intellij Java Basics - Anfänger-Themen 5
C Probleme mit dem Erstellen und Importieren von Packages Java Basics - Anfänger-Themen 6
Dimax In Java File (nicht in Java Projekt) mysql Driver importieren Java Basics - Anfänger-Themen 3
O Problem mit SOAP / javax.xml importieren Java Basics - Anfänger-Themen 7
H Eclipse Git importieren Java Basics - Anfänger-Themen 2
M Erste Schritte Importieren funktioniert nicht Java Basics - Anfänger-Themen 7
F (Eclipse) Beim importieren etwas fehlerhaft bitte um Hilfe :) Java Basics - Anfänger-Themen 3
S Importieren einer Textdatei Java Basics - Anfänger-Themen 2
W Externe class in Eclipse importieren Java Basics - Anfänger-Themen 0
A Reader für Benutzereingabe in Eclipse importieren Java Basics - Anfänger-Themen 3
S Klassen Class mit Funktionen importieren Java Basics - Anfänger-Themen 1
J javaproject von github importieren? Java Basics - Anfänger-Themen 6
B Wie kann ich eine Methode einer selbst erstellten Klasse statisch importieren? Java Basics - Anfänger-Themen 5
J Daten einer Textdatei in ein JTable importieren. Java Basics - Anfänger-Themen 3
H Variable einer anderen Klasse importieren Java Basics - Anfänger-Themen 2
F Daten aus Excel-Tabelle in Java importieren Java Basics - Anfänger-Themen 15
N Eclipse Source importieren ohne Link Java Basics - Anfänger-Themen 3
D Klassen MediaPlayer Klasse importieren Java Basics - Anfänger-Themen 2
G eigene Bibliothek in Java importieren Java Basics - Anfänger-Themen 5
T Scanner lässt sich nicht importieren Java Basics - Anfänger-Themen 1
N Fehler beim importieren vom package Java Basics - Anfänger-Themen 2
E Ardublock in Eclipse Luna importieren Java Basics - Anfänger-Themen 0
E Externe Library .zip Datei importieren Java Basics - Anfänger-Themen 3
A Dinge lassen sich nicht importieren Java Basics - Anfänger-Themen 7
J Daten aus zweiter Klasse importieren Java Basics - Anfänger-Themen 33
Q Importieren meiner Boundary? Bitte Hilfe Java Basics - Anfänger-Themen 3
F Input/Output Daten importieren und Exportieren Java Basics - Anfänger-Themen 2
N Importieren Java Basics - Anfänger-Themen 13
J Eclipse + Java + Packages importieren Java Basics - Anfänger-Themen 7
M Klasse importieren ohne Paket Java Basics - Anfänger-Themen 2
G Projekte importieren und andere Fragen Java Basics - Anfänger-Themen 3
J Zugriff auf Variable vom typ (default) durch Importieren des Packages? Java Basics - Anfänger-Themen 5
S Library importieren in Eclipse Java Basics - Anfänger-Themen 9
Paristick Projekt importieren, jniregistry Java Basics - Anfänger-Themen 2
D Java-Projekte importieren Java Basics - Anfänger-Themen 6
G jar ( H2 ) importieren Java Basics - Anfänger-Themen 3
C gif in Eclipse importieren und exportieren Java Basics - Anfänger-Themen 12
D Importieren von bestimmten Quellen Java Basics - Anfänger-Themen 13
D Ordner in Eclipse Importieren Java Basics - Anfänger-Themen 6
E Klasse importieren Java Basics - Anfänger-Themen 4
M Importieren von "IO.class" unter Eclipse Java Basics - Anfänger-Themen 4
S Importieren funktioniert nicht Java Basics - Anfänger-Themen 10
M Serializable - Bei Update ältere Daten importieren Java Basics - Anfänger-Themen 14
I Importieren Java Basics - Anfänger-Themen 2
N methoden einzeln importieren oder * nehmen? Java Basics - Anfänger-Themen 33
manunana89 Substance richtig importieren??? Java Basics - Anfänger-Themen 3
M Packet importieren Java Basics - Anfänger-Themen 9
A Klasse importieren wenn 2 mal gleicher Name Java Basics - Anfänger-Themen 2
D packages importieren Java Basics - Anfänger-Themen 3
G jar importieren Java Basics - Anfänger-Themen 3
G Class Getopts <-- Wie kann ich diese Class importieren Java Basics - Anfänger-Themen 1
G Sortierverfahren importieren Java Basics - Anfänger-Themen 2
N Importieren von Wörtern aus Datei als Array von Strings Java Basics - Anfänger-Themen 2
G String Array importieren ? Java Basics - Anfänger-Themen 10
G mit "page" in JSP importieren Java Basics - Anfänger-Themen 13
R Java-Klasse importieren Java Basics - Anfänger-Themen 12
S Klasse importieren Java Basics - Anfänger-Themen 9
M Importieren einer Javadatei aus einem anderen Verzeichnis Java Basics - Anfänger-Themen 4
B hp-daten in programm importieren Java Basics - Anfänger-Themen 4
J Anfängerfrage: wie externe Dateien importieren? Java Basics - Anfänger-Themen 5
G importieren von pakete Java Basics - Anfänger-Themen 11
O String nur importieren wenn nur zahlen da sind? Java Basics - Anfänger-Themen 7
S Klasse importieren Java Basics - Anfänger-Themen 4
N Porblem mit dem Importieren eigener Pakete Java Basics - Anfänger-Themen 4
P Eigene Package importieren? (Eclipse) Java Basics - Anfänger-Themen 6
B Namespace importieren? Java Basics - Anfänger-Themen 3
K Mit POI-HSSF Diagramme aus XLS- Importieren Java Basics - Anfänger-Themen 2
G Probleme mit importieren: The Import Jama cannot be resolved Java Basics - Anfänger-Themen 23
T Packages erstellen und importieren? Java Basics - Anfänger-Themen 10
G neues Paket importieren Java Basics - Anfänger-Themen 2
J Variable aus anderer Klasse importieren Java Basics - Anfänger-Themen 6
D Variable importieren ? Java Basics - Anfänger-Themen 3
N *.jar erstellen & library importieren? Java Basics - Anfänger-Themen 5
U Liste importieren und für weitere Verwendung sichern Java Basics - Anfänger-Themen 4
M Paket aus beliebigem Verzeichnis importieren Java Basics - Anfänger-Themen 9
P Problem: Kann keine externen Pakete importieren Java Basics - Anfänger-Themen 11
N Java2me Pakete importieren Java Basics - Anfänger-Themen 2
S Importieren in Packages Java Basics - Anfänger-Themen 11
G importieren von IOTools Java Basics - Anfänger-Themen 2
L Eigene Packages importieren Java Basics - Anfänger-Themen 2
A Public/Private und wie importieren? Java Basics - Anfänger-Themen 13
J Methodenaufrufe abstrakte Klassen, Interfaces Java Basics - Anfänger-Themen 17
M Abstrakte Klassen - Notation Java Basics - Anfänger-Themen 9
Detlef Bosau Nachladen von Klassen zur Laufzeit Java Basics - Anfänger-Themen 24
M Anonyme Klassen - Warum wird in der Konsole nichts ausgegeben? Java Basics - Anfänger-Themen 1
MoxMorris Einige Methoden aus verschiedenen Klassen nacheinander auszuführen läuft seltsam Java Basics - Anfänger-Themen 2
I Klassen von einem package laden, Statisches Feld auslesen und Objekt erstellen Java Basics - Anfänger-Themen 8
I 2 verschiedene Klassen mit gleichen Property vergleichen Java Basics - Anfänger-Themen 13
C Array von Klassen Java Basics - Anfänger-Themen 2
monsterherz 2 Klassen daher Probs mit dem Dateinamen Java Basics - Anfänger-Themen 9

Ähnliche Java Themen

Neue Themen


Oben