Projekte in 2 versch. Arbeitsbereichen: auf ein Projekt verweisen (ohne Fehler zu bekommen)

C

Codix

Bekanntes Mitglied
Hallo zusammen.

Danke.

Ich bin auf dem Weg zur Lösung einer komplexen Aufgabe, in der verlangt wird, dass sie in 2 versch. Arbeitsbereichen bearbeitet wird.

Aufgabenstellung:

Erstellen Sie eine wiederverwendbare Klasse Rechnungen mit Klassenmethoden in einem Paket javaauf4. Die erste Methode quadrat() der Klasse soll das Quadrat einer übergebenen Zahl berechnen und die zweite Methode wurzel() die Quadratwurzel einer übergebenen Zahl.Für das Berechnen der Quadratwurzel können Sie die Methode sqrt() aus der Klasse Math verwenden. Die Methode erwartet einen double-Typ als Argument und liefert einen double-Typ zurück. Eine Import-Anweisung ist für die Klasse nicht erforderlich, da sie zum Paket java.lang gehört. Erstellen Sie von der Methode quadrat() jeweils eine Version, die int-Typen ver-arbeitet und einen int-Typ zurückliefert, und eine Version, die double-Typen ver-arbeitet und einen double-Typ zurückliefert. Der Aufruf soll aber nur durch den Namen quadrat() erfolgen.

Welcher Typ verarbeitet werden soll, muss die Funktion selbst anhand des Arguments feststellen können.

Kommentieren Sie die Klasse Rechnungen ausführlich. Erstellen Sie dann eine Klasse in einem Projekt in einem anderen Arbeitsbereich, die in einer main()-Methode die Klassenmethoden aus der Klasse Rechnungen jeweils mit einem int- und einem double-Wert aufruft. Nehmen Sie die Klasse Rechnungen dabei über einen Verweis in das Projekt mit der Testklasse auf. Beschreiben Sie bitte für die Lösung dieser Aufgabe zusätzlich, welche Schritte Sie mit Eclipse für das Erstellen der wiederverwendbaren Klasse durchführen und wie Sie die Klasse Rechnungen in das Projekt mit der Testklasse einbinden.

Code im ersten Arbeitsbereich (auf den ich im zweiten Arbeitsbereich verwiesen habe):

============================================================
package package7_4;

public class Rechnungen {
// Quadratwurzel
public static double quadratwurzel(double wert) {
return Math.sqrt(wert);
}

// Quadrat von int-Wert
public static int quadrat(int wert) {
return wert * wert;
}

// Quadrat von double-Wert
public static double quadrat(double wert) {

return wert * wert;

}
}

===========================================================

Code im zweiten Arbeitsbereich (mit dem Verweis auf den Code im ersten Arbeitsbereich):

package einsendeaufgabe7;

public class TestKlasse {

public static void main(String[] args) {

System.out.println("Das Quadrat von 4 ist " + Rechnungen.quadrat(4));

System.out.println("Das Quadrat von 5.3 ist " + Rechnungen.quadrat(5.3));

System.out.println("Die Quadratwurzel von 4 ist " + Rechnungen.quadratwurzel(4));

}

}

===========================================================

Ich bekomme beim Verweisen verschiedene Fehler rein: siehe angehängte Screenshots. Bitte um schnellstmögliche Hilfe bei der Fehlerbehebung.

Danke im Voraus.

Codix
 

Anhänge

  • Rechnungen.java im 2.ten Arbeitsbereich (Verweis).png
    Rechnungen.java im 2.ten Arbeitsbereich (Verweis).png
    92,2 KB · Aufrufe: 8
  • Rechnungen-Projekt.png
    Rechnungen-Projekt.png
    74,8 KB · Aufrufe: 6
  • TestKlasse (im anderen Arbeitsbereich).png
    TestKlasse (im anderen Arbeitsbereich).png
    87,9 KB · Aufrufe: 6
Zuletzt bearbeitet:
kneitzel

kneitzel

Top Contributor
Also beim ersten und dritten Bildschirmfoto ist die Klasse Rechnungen im default package (Steht da in der Baum-Darstellung doch auch deutlich).

Daher wird die package Zeile angemeckert, denn da gibst Du ein package an, in dem die Klasse nicht ist. Und daher kannst Du auf die Klasse nicht zugreifen, denn das default package kann nicht von außerhalb des package referenziert werden.
 
C

Codix

Bekanntes Mitglied
@JustNobody
ich habe einfach den Verweis gemacht und Eclipse hat das so einpackt, in die default package. Ich weiss auch nicht warum.
Was schlägst du vor, damit das beim Verweisen nicht mehr passiert (,dass eclipse alles in die default package packt)?
Sollte ich beim Verweisen spezielle Regeln beachten?
Danke im Voraus
 
Kirby.exe

Kirby.exe

Top Contributor
Beim erstellen einer Klasse wirst du gepromtet ob du ein Package erstellen möchtest und da kannst du es machen :)
 
C

Codix

Bekanntes Mitglied
also wie bekomme ich jetzt die default package weg? Ich habe versucht den Verweis nochmals neu zu erstellen, aber dort kommt keine Auswahlmöglichkeit vor (default package oder keine). Versteht ihr wie ich das meine?
 
kneitzel

kneitzel

Top Contributor
Ich arbeite normalerweise nicht mit eclipse aber bei Eclipse sollte es so sein wie bei jeder IDE: Erstelle einfach ein package, das Du haben willst und dann schieb die Datei da rein.

Ggf. kann Eclipse aber auch aktiv einen Fehler beheben. Bei IntelliJ gehe ich auf die Zeile, in der so ein Fehler ist und drücke Alt - Enter und dann bietet Eclipse mir Lösungsideen an.

Ich habe auch keine Ahnung, wie Du das so hin bekommen hast. Hast Du die Klasse erst so erstellt und dann später einfach die package Zeile von Hand hinzugefügt? Sowas geht in der Regel alles in der GUI der IDE. Also Package erstellen und Klassen, die da drin sein sollen, rein verschieben.
 
C

Codix

Bekanntes Mitglied
Ich arbeite normalerweise nicht mit eclipse aber bei Eclipse sollte es so sein wie bei jeder IDE: Erstelle einfach ein package, das Du haben willst und dann schieb die Datei da rein.

Ggf. kann Eclipse aber auch aktiv einen Fehler beheben. Bei IntelliJ gehe ich auf die Zeile, in der so ein Fehler ist und drücke Alt - Enter und dann bietet Eclipse mir Lösungsideen an.

Ich habe auch keine Ahnung, wie Du das so hin bekommen hast. Hast Du die Klasse erst so erstellt und dann später einfach die package Zeile von Hand hinzugefügt? Sowas geht in der Regel alles in der GUI der IDE. Also Package erstellen und Klassen, die da drin sein sollen, rein verschieben.

danke für die Antwort.
Ich habe das so gemacht: ich habe in einem Arbeitsbereich Javaprojekt: Aufgaben =>package: package7_4 => class Rechnungen erstellt.
&
im 2.ten Arbeitsbereich: ist ein anderes Java-Projekt: Aufgaben7 =>Paket testklasse mit einer Klasse TestKlasse (main class).

jetzt bin ich im 2.ten arbeitsbereich und gehe auf Ordner Aufgaben7 , rechte Maustaste, Erstellungspfad, Quelle verlinken, wähle package7_4 oder Aufgaben aus (aus dem ersten Arbeitsbereich, habe beides schon probiert) und bekomme die default package oder lipse ändert den Namen des Packets auf src.package7_4 und added ein bin.package7_4 paket dazu.

Meldung in der Klasse Rechnungen:
in der Zeile package package7_4: Das deklarierte Paket "package7_4" stimmt nicht mit dem erwarteten Paket "src.package7_4" überein
 
kneitzel

kneitzel

Top Contributor
Also da ich nicht mit Eclipse arbeite, wenn es sich vermeiden lässt, kann ich da nicht ganz sicher etwas zu sagen.

Aber mir scheint, dass das package7_4 sowas wie ein eingebundenes Source Verzeichnis ist und eben kein package. Dafür spricht auch das zweite Bildschirmfoto: Da hast Du "src" als root für den Source in dem dann package7_4 als package ist. So ist der Ordner, den Du als package ansiehst, halt erst als root Ordner verwendet...

Das ist aber, was ich aus den Bildschirmfotos ablese. Aus der Fehlermeldung jetzt ersehe ich, dass der Source Ordner nun der Projektordner zu sein scheint, d.h. der src Ordner ist für Ihn schon ein Package und damit erwartet er ein package src.package7_4 in der java Datei....

Du musst den / die Ordner mit den Sourcen sauber im Projekt markieren. Wenn das falsch ist, dann rennst Du in genau diese Probleme.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
O Ideen für kleinere Projekte um Java zu lernen Java Basics - Anfänger-Themen 1
M Klassen in Projekte wiederverwenden ?? (Netbeans IDE) Java Basics - Anfänger-Themen 8
T Erste Schritte Darstellung der Java-Projekte in Eclipse Java Basics - Anfänger-Themen 2
snipesss Eclipse Neon findet meine Projekte nicht? Java Basics - Anfänger-Themen 1
A Erste Schritte Vieschiedene Java versionen für verschiedne Programme/Projekte Java Basics - Anfänger-Themen 3
D Projekte + Datum + löschen Java Basics - Anfänger-Themen 11
L Beispiel Projekte Java Basics - Anfänger-Themen 3
A geeignete Java-Projekte für Schüler (Einsteiger) Java Basics - Anfänger-Themen 26
G Projekte importieren und andere Fragen Java Basics - Anfänger-Themen 3
D Javadoc für Packages oder ganze Projekte Java Basics - Anfänger-Themen 5
A Projekte Java Basics - Anfänger-Themen 7
K Input/Output Verschiedene Ordner für Java u.v.m. Projekte Java Basics - Anfänger-Themen 3
D Java-Projekte importieren Java Basics - Anfänger-Themen 6
E Erste Schritte Eclipse kompiliert alle Projekte im Workspace Java Basics - Anfänger-Themen 10
X Klassen Klassen in Projekte einbinden mit Eclipse Java Basics - Anfänger-Themen 6
K Gelöschte Projekte nicht neu anlegbar Java Basics - Anfänger-Themen 3
M tomcat Projekte und geschützte Dateien Java Basics - Anfänger-Themen 9
S Alle Projekte fehlen bei Eclipse ??? Java Basics - Anfänger-Themen 3
H Große Projekte mit Java - Ausführbare Datei Java Basics - Anfänger-Themen 2
S Irgendwie kann ich meine Eclipse Projekte nicht mehr veraendern..? Java Basics - Anfänger-Themen 5
G Referenzierte Projekte: java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 2
G Projekte referenzieren Java Basics - Anfänger-Themen 5
C Projekte in Jar-Datei einbinden Java Basics - Anfänger-Themen 2
M wie kann ich meine Projekte auf einen stick speichern? Java Basics - Anfänger-Themen 6
G 2 Projekte vereinen Java Basics - Anfänger-Themen 2
J JBuilder-Projekte als exe? Java Basics - Anfänger-Themen 6
G Methoden Methoden mit versch. Datentypen Java Basics - Anfänger-Themen 1
M For-Schleife durch zwei versch. Variablen begrenzen Java Basics - Anfänger-Themen 27
N OOP 2 versch. Modi in einem Objekt de/aktivieren Java Basics - Anfänger-Themen 10
F Klassen Zugriff auf Fenster aus versch. Klassen Java Basics - Anfänger-Themen 5
K Button's mit versch. Aufgaben/ActionListener Java Basics - Anfänger-Themen 12
N Grafische Programmierung mit jeweils anderen Bildern bei versch. Ergebnissen Java Basics - Anfänger-Themen 9
B Wertetabelle mit versch. Formaten aus txt-Datei einlesen Java Basics - Anfänger-Themen 2
D Das Ausführen einer Java Anwendung auf versch Systemen... Java Basics - Anfänger-Themen 5
M javamail: versch. Postfächer auslesen Java Basics - Anfänger-Themen 6
G Werte übergeben zw. versch. Projekten Java Basics - Anfänger-Themen 2
N ActionListener versch. Buttons zuweisen => versch. Method Java Basics - Anfänger-Themen 13
D Über Button abhängig von Auswahl 2 versch. Fenster öffnen Java Basics - Anfänger-Themen 2

Ähnliche Java Themen


Oben