Methoden Mein erstes Programm - und gleich Probleme

Beginner88

Mitglied
Hallo Leute,

bin ziemlich neu hier(gerade erst registriert) und will auch gleich mein erstes Problem schildern. Es geht um eine Aufgabe für die Uni, ich studiere zwar kein Informatik, aber gemacht werden muss es trotzdem und ich tue mich damit ziemlich schwer. Das Programm ist sicher sehr simpel, ich möchte auch die Aufgabe nicht komplett gemacht bekommen, bräuchte nur etwas Hilfestellung. In die Theorie der OOP hab ich mich schon ewas eingelesen... nun zur Aufgabe(Problem):

Wir sollen ein kleines Programm schreiben, welches Distanzen zwischen 2 Orten berechnen kann, dabei eine Klasse erstellen, welche den Ort mit Namen und Koordinaten verwaltet. Eine Klasse die eine Bounding Box berechnet(kleinstes, alle Punkte umschließendes Viereck), mit Methoden zur Wiedergabe von Eckpunkt, Breite und Höhe und Eine Klasse als Applikation, welche 3 Orte instantiiert die Boundingbox mit Eckpunkt, Breite und Höhe auf der Konsole ausgibt, die Namen und Koordinaten der 3 Orte sowie ihre Distanzen.



So, nun die Klasse welche einen Ort verwaltet hab ich schon, meine konkreten Fragen sind:

1. Wie mache ich das mit dem kleinsten, alle Punkte umfassenden Viereck? Also Wie sage ich dem Programm er soll jenen Punkt nehmen, welcher der größten X und Y Wert besitzt und
2. Wie sage ich der Applikationsklasse, das das Objekt "Ort" die Methoden und Attribute aus der Allgemeinen Klasse "Ort" verwenden soll, oder wird das mit dem "new-Operator" automatisch geregelt?


für ein bisschen Hilfe wäre ich wirklich sehr dankbar.

Viele Grüße
Rudi
 
F

Firephoenix

Gast
Hi und willkommen im Forum.
Am besten bei so Aufgaben ist es, wenn du erstmal zeigst was du schon hast.
Daher, wie ist denn die Klasse Ort (falls vorhanden) implementiert, wie kommt man an die Attribute wie x bzw y-Koordinaten?

Den Aufruf für die Methode könntest du aber z.b. über Parameter machen.
Angenommen du hast eine Klasse Ort und 3 Objekte davon (o1,o2,o3)
dann könntest du die Methode so schreiben:
Java:
public void machIrgendwas (Ort a, Ort b, Ort c){
//tuwas
}
und dann entsprechend so aufrufen:
Java:
machIrgendwas(o1,o2,o3);
Gruß
 
G

Gelöschtes Mitglied 9001

Gast
1. Wie mache ich das mit dem kleinsten, alle Punkte umfassenden Viereck? Also Wie sage ich dem Programm er soll jenen Punkt nehmen, welcher der größten X und Y Wert besitzt und

Es ist nicht unbedingt so, daß es einen Punkt gibt, der sowohl den größten X- als auch den größten Y-Wert hat.
Halte in 4 Variablen fest: minX, minY, maxX, maxY. Nimm Dir nun jeden Punkt eines jeden Viereckes vor: ist der X-Wert größer als maxX? Dann übernimmt maxX diesen Wert. Ist der X-Wert kleiner als minX? Dann übernimmt minX diesen Wert. Entsprechend für die Y-Werte. Hast Du alle Punkte durch, hast Du das umfassende Viereck - es spannt sich zwischen (minX,minY) und (maxX,maY) auf.

2. Wie sage ich der Applikationsklasse, das das Objekt "Ort" die Methoden und Attribute aus der Allgemeinen Klasse "Ort" verwenden soll, oder wird das mit dem "new-Operator" automatisch geregelt?
Ja, wird es.
 

Beginner88

Mitglied
Es ist nicht unbedingt so, daß es einen Punkt gibt, der sowohl den größten X- als auch den größten Y-Wert hat.
Halte in 4 Variablen fest: minX, minY, maxX, maxY. Nimm Dir nun jeden Punkt eines jeden Viereckes vor: ist der X-Wert größer als maxX? Dann übernimmt maxX diesen Wert. Ist der X-Wert kleiner als minX? Dann übernimmt minX diesen Wert. Entsprechend für die Y-Werte. Hast Du alle Punkte durch, hast Du das umfassende Viereck - es spannt sich zwischen (minX,minY) und (maxX,maY) auf.

Ahh, da hast du natürlich völlig recht, es Muss ja kein Punkt sein dessen Koordinaten auch die Max/Min sind, nur die einzelnen X oder Y Koordinaten.
Dummer Denkfehler von mir. Also ist dann natürlich die Breite einfach Xmax - Xmin, die Höhe Ymax - Ymin und die 4 Eckpunkte sind dann auch klar...
 

Beginner88

Mitglied
So,

ich habe nun also die Klasse, welche die Methoden und Attribute für die orte verwaltet:

Java:
	public class Ort {

		
		private String Name;

		private double X_;

		private double Y_;

		
		public Ort(double i, double j) {
			
		}

		public String getName() {
			return Name;
		}

		public void setName(String Name) {
			this.Name = Name;
		}


		public double getX_() {
			return X_;
		}

		public void setX_(double X_) {
			this.X_ = X_;
		}

		public double getY_() {
			return Y_;
		}

		public void setY_(double Y_) {
			this.Y_ = Y_;
		}

	}

Und ich habe eine Klasse welche nun 3 Objekte erschaffen hat:

Java:
public class Applikation {

	public static void main(String[] args) {
		
		Ort dresden = new Ort(8,5.5);
		Ort münchen = new Ort(3.5,2);
		Ort hamburg = new Ort(1,9);

	}

}


Wie kann ich nun in der dritten Klasse die simple Bounding Box dafür schreiben? Ich weiß zwar genau, was ich machen muss nur nicht wie, habe einfach massiv Probleme mit der Syntax, und das ganze Theorie gewälze hat mir dabei auch nicht wirklich geholfen.
 
G

Gelöschtes Mitglied 9001

Gast
In Deiner Ort-Klasse werden die X- und Y-Werte gar nicht übernommen. In Zeile 12 muß also noch Code hin, der i und j nach X_ und Y_ kopiert.

BoundingBox: Mein Vorschlag: entwirf eine Klasse "Rechteck", die Referenzpunkt und Abmessungen eines Rechtecks beinhaltet. Initialisiert werden soll das Rechteck mit einem Ort. Die Abmessungen betragen dann noch 0. Entwirf eine Methode addOrt, die als Parameter einen Ort erwartet und dann die Abmessungen erweitert und/oder den Referenzpunkt verschiebt, so daß das Rechteck den übergebenen Ort einschließt (so, wie ich das oben schon beschrieben habe).

In der Applikationsklasse erzeugst Du dann ein Rechteck-Objekt, initialisierst es mit dem ersten Ort, rufst dann addOrt mit dem zweiten Ort, dann mit dem dritten Ort auf und gibst dann Referenzpunkt und Abmessungen des Rechteckobjektes aus.

Java hat übrigens bereits genau sowas auch vorrätig: die Klassen Point und Rectangle. Mir ist schon klar, daß Du die Aufgabe hast, das selbst zu implementieren, aber Du kannst Dir die API mal anschauen, um beispielhaft zu sehen, wie Dinge in einem Programm strukturiert werden können. Die Rectangle-Klasse von Sun hat allerdings einen Schönheitsfehler: initialisiert man sie ohne Parameter, liegt deren Referenzpunkt bei (0,0). Fügt man dann mit add Punkte hinzu, würde die "BoundingBox" auf jeden Fall den Punkt (0,0) einschließen, was nicht gewünscht sein dürfte.
 

Alph0r

Mitglied
Ich bin selber ncoh ein ziemlicher Java anfänger, ich sag mal kurz, was mir so auffält:

Du hast eine Instanzvariable für den Namen der Stadt. Diese Variable wird aber im Konstruktor nicht gesetzt( mal von dem abgesehen, was Rajmund sagte) Du erstellst für die Orte in deiner Main Methode variablen, denen du die Stadtnamen gibst, aber das ändert nichts daran, das die instanzvariable für den Namen nicht gesetzt wird.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Mein erstes Programm Java Basics - Anfänger-Themen 3
M Mein erstes Java Programm Java Basics - Anfänger-Themen 5
1 Mein erstes Programm, HELP!! Java Basics - Anfänger-Themen 2
D Mein erstes Programm flackert Java Basics - Anfänger-Themen 5
M Sammlung von Anfängerfragen für mein erstes Programm Java Basics - Anfänger-Themen 15
L Suche Verbesserungsvorschläge für mein erstes Programm Java Basics - Anfänger-Themen 34
Bierhumpen mein erstes großes Programm. Was ändern? verbessern? Java Basics - Anfänger-Themen 12
A Mein erstes Programm Java Basics - Anfänger-Themen 6
S Mein erstes eigenes Projekt - Aufbau und Strukturierung Java Basics - Anfänger-Themen 6
M OOP Mein erstes Textadventure... Java Basics - Anfänger-Themen 3
T mein erstes Java projekt Java Basics - Anfänger-Themen 8
T OOP Mein erstes Java-Spiel - Schiffe versenken! Java Basics - Anfänger-Themen 2
E Mein erstes Java Projekt - Sauberer code? Java Basics - Anfänger-Themen 28
P Mein erstes JAR-File Java Basics - Anfänger-Themen 8
A Warum wird mein jdk nicht gefunden? Java Basics - Anfänger-Themen 3
J Layout Manager, welcher ist der Richtige für mein Program? Java Basics - Anfänger-Themen 1
dennis_lnz Klassen Wie kann ich mein Java Textadventure verbessern, um ein Klassendiagramm zu erstellen? Java Basics - Anfänger-Themen 9
J Größter gemeinsamer Teiler: mein Code Java Basics - Anfänger-Themen 6
J Mein Programm läuft bei der ersten Eingabe nicht mehr weiter, woran liegt das? Java Basics - Anfänger-Themen 6
J Mein Java Programm lässt sich nicht mehr bearbeiten Java Basics - Anfänger-Themen 2
I Methoden Wieso wird mein Array "a" verändert und meine Variable "a" nicht? Java Basics - Anfänger-Themen 4
Alen123 Warum funktioniert mein Code nicht? Java Basics - Anfänger-Themen 64
sserio Wieso funktioniert mein Programm nicht Java Basics - Anfänger-Themen 2
sserio Wieso funktioniert mein TableView nicht /JavaFX. Java Basics - Anfänger-Themen 4
M Mein quellcode wird nicht in der Konsole ausgegeben Java Basics - Anfänger-Themen 3
J Nach dem Exportieren funktioniert mein Programm nicht mehr Java Basics - Anfänger-Themen 8
P Mein Programm wird zwar erfolgreich Compiliert, öffnet sich aber nicht Java Basics - Anfänger-Themen 6
W Wie ziehe ich von einer bestimmten Zahl, Zahlen ab, bis mein Ergebnis null beträgt? Java Basics - Anfänger-Themen 10
J Kann ich mein Programm so schreiben? Java Basics - Anfänger-Themen 4
A Java die richtige Programmiersprache für mein Projekt? Java Basics - Anfänger-Themen 1
T Mein Programm hat Fehler Java Basics - Anfänger-Themen 4
S Brauche hilfe in Java [Fehler in mein Code]? Java Basics - Anfänger-Themen 2
S Wie ende ich mein Pogrammierung? [Hilfe] Java Basics - Anfänger-Themen 1
R Mein Plugin funktioniert nicht? Java Basics - Anfänger-Themen 10
J Mein Programm beendet sich ohne mein Zutun Java Basics - Anfänger-Themen 9
A Eine Krone in der Textausgabe - Mein Code Java Basics - Anfänger-Themen 11
M Warum berechnet mein Primzahlenprog zu hohe Zahlen nicht? Java Basics - Anfänger-Themen 20
G Mein Java Projekt funktioniert nicht Java Basics - Anfänger-Themen 5
W Wieso funktioniert mein Switch Case nicht ?! Java Basics - Anfänger-Themen 9
L Mein Taschenrechner lässt sich plötzlich nicht mehr öffnen Java Basics - Anfänger-Themen 5
x-tshainge Mein Programm lässt sich nicht Starten Java Basics - Anfänger-Themen 8
W Warum läuft mein Programm nicht? Java Basics - Anfänger-Themen 14
W Warum funktioniert mein Programm nicht ? Java Basics - Anfänger-Themen 12
W Warum funktioniert mein Programm nicht ? Java Basics - Anfänger-Themen 6
W Ist mein Struktogram richtig erstellt worden? Java Basics - Anfänger-Themen 4
W Erste Schritte Warum funktioniert mein Programm nicht ? ~if Anweisung~ Java Basics - Anfänger-Themen 4
A Erste Schritte Mein Programm erkennt die variable EinAus.readInt nicht Java Basics - Anfänger-Themen 15
N Warum terminiert mein Programm nicht? Java Basics - Anfänger-Themen 13
G Wie kann ich mein Quellcode als Programm vom desktop starten? Java Basics - Anfänger-Themen 1
P Wie kann ich mein Programm zu einer App umwandeln? Java Basics - Anfänger-Themen 4
A Mein 1x1 Programm funktioniert nicht? Java Basics - Anfänger-Themen 2
G Input/Output Wo liegt mein Fehler? Java Basics - Anfänger-Themen 4
G Variablen Was ist mein Fehler? Java Basics - Anfänger-Themen 2
C Warum funktioniert mein If Statement nicht richtig? Java Basics - Anfänger-Themen 18
B Drucken: Default Paper von Drucker? Mein Drucker druckt falsch Java Basics - Anfänger-Themen 3
W Compiler-Fehler Fehler - <identifier> expected, wo liegt mein Fehler? Java Basics - Anfänger-Themen 4
stylegangsta Input/Output Hat eclipse eine Macke oder mein Code Array Datei einlesen Java Basics - Anfänger-Themen 5
S Wieso wird mein JFrame transparent dargestellt? Java Basics - Anfänger-Themen 5
N mein RegEx Java Basics - Anfänger-Themen 2
N Mein Bubblesort sortiert mein Array nicht Java Basics - Anfänger-Themen 2
W Wie hat mein Lehrer das gemacht. Java Basics - Anfänger-Themen 2
Z Klassen Warum wird mein Objekt nicht erkannt? Java Basics - Anfänger-Themen 2
J Erste Schritte Zweithöchster Wert eines Arrays herausfinden - warum klappt mein Code nicht? Java Basics - Anfänger-Themen 3
A Wie kann ich mein Programm noch effizienter machen? Java Basics - Anfänger-Themen 1
C Mein Video zu Java Grundlagen Java Basics - Anfänger-Themen 8
T Eclipse kennt mein Button nicht... Java Basics - Anfänger-Themen 5
J Wo liegt nur an dieser einfachen Bedingung mein Fehler? Java Basics - Anfänger-Themen 8
E Mein eigener Listener (Hilfe gesucht) Java Basics - Anfänger-Themen 2
D Brauche Hilfe für mein übungsprogramm Java Basics - Anfänger-Themen 16
T Mein String in ein JLabel stecken Java Basics - Anfänger-Themen 2
H Kann ich mein Programm vereinfachen? Java Basics - Anfänger-Themen 3
J Methoden Wo ist mein Fehler ?! Java Basics - Anfänger-Themen 9
R .txt in mein Javaprogramm hineinschmelzen Java Basics - Anfänger-Themen 6
S Mein Code is unübersichtlich - besseren Stil Java Basics - Anfänger-Themen 6
H Ich kann mein Java Programm Test.class nicht ausführen Java Basics - Anfänger-Themen 6
H Probleme mein Ausführen der .class (Ubuntu JDK6) Java Basics - Anfänger-Themen 2
M Mein TableEvent problem Java Basics - Anfänger-Themen 3
C Boolsche Ausdrücke - Wo ist mein Fehler? Java Basics - Anfänger-Themen 14
propra Wie mache ich einem JPanel mein bereits instanziertes Model bekannt Java Basics - Anfänger-Themen 9
M Warum wird mein Icon bei den JTree Nodes nicht angezeigt? Java Basics - Anfänger-Themen 7
K Mein Programm... Heute: Settings-Datei in .jar speichern und auslesen Java Basics - Anfänger-Themen 9
M Kann mein Java Programm nicht starten Java Basics - Anfänger-Themen 6
V Mein erster Konstruktor Java Basics - Anfänger-Themen 3
S GaussJordan in Java, wo liegt mein Fehler? Java Basics - Anfänger-Themen 4
O Warum terminiert mein Programm nicht!? Java Basics - Anfänger-Themen 15
U2nt Mein Chat Java Basics - Anfänger-Themen 10
S Wo ist mein Fehler? Java Basics - Anfänger-Themen 2
I OOP This-Referenzs > wo liegt mein Denkfehler? Java Basics - Anfänger-Themen 24
L Hashtable nicht wirklich geeignet für mein Vorhaben? Java Basics - Anfänger-Themen 3
W ArrayListe , Wo ist mein Fehler? Java Basics - Anfänger-Themen 6
H wie bekomm ich ein Foto in mein Programm rein? Java Basics - Anfänger-Themen 8
M Mein Externes Programm startet nicht Java Basics - Anfänger-Themen 13
M Timer unterbrechen? Wo ist mein Thread? Java Basics - Anfänger-Themen 2
S wieso ist mein Code falsch? Java Basics - Anfänger-Themen 2
S Mein Computer kennt "javac" und "java" nicht mehr! Java Basics - Anfänger-Themen 6
B XML? Für Uhrzeit und Datum für mein HP? Java Basics - Anfänger-Themen 6
JeromeM90 Mein Java Applet zeitverzögern ? Java Basics - Anfänger-Themen 2
Developer_X Mein erster Internet Explorer Java Basics - Anfänger-Themen 14
B könnte nochmal jemand über mein Projekt schauen? Java Basics - Anfänger-Themen 4
J Mein Objekt will nicht! Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben