Zitat:
Zitat:
4.Klasse:
Diese Klasse liefert nur die private Variablen und die zugehörigen Getter bzw Setter Methoden
Jepp ist ok nur erklaer mir mal genau den Sinn dahinter.
Imho macht das nur dann Sinn wenn du diese Variablen und und methoden nochmal in einem anderen Kontext verwenden willst. Die idee mit der vererbung waere ja das du eben in der Superclass alles drinnen hast was saemtliche andere Arten von Berechnungen verwenden koennen / werden.
Also wenn du jetzt sagen wir mal z.B eine "TunnelBerechnung" haettest die aehnliche Variablen und Methoden hat wie Kanal dann koenntest du diese eben von "Berechnung" vererben. Wenn du immer nur eine KanalBerechnung haben wirst und nix anderes macht die verervung relativ wenig Sinn (abgesehen davon das sie flexibilitaet fuer die Zukunft erhoeht falls doch noch mal ne andere Art der Berechnung her muss)
Zu deinem Kommentar, das es nur Sinn macht wenn ich noch mehr Klassen die dieselben Variablen nutzen hätte:
Das Programm wird ca. 20 verschiedene Klassen haben wie z.B. KanalGerade,KanalBogen,Übergang Eck_Rund, .....
Zitat:
Was ich meinte ist das du ein package GUI hast wo alles drinnen ist Berechnung und GUI. Es funktioniert zwar aber es macht halt wenig Sinn da dann extra packages anzulegen wenn du eh alle Komponenten da rein tust. Aber fuer dein Program sind packages eh nicht benoetigt da relativ klein, waere aber fuer die Zukunft best practice wenn du dich daran gewoehnst verschiedene Komponenten in ihre jeweiligen Packages zu gruppieren in deinem Beispiel jetzt z.B eben "gui" und eventuell "engine" oder "berechnungen" oder sowas. Die Idee ist das all diese Klassen so weit wie moeglich voneinander unabhaengig sind in der Welt des software engineerings als "low coupling" bezeichnet. Aber wie gesagt etwas out of scope fuer dein Projekt :D
Nicht unbedingt wie du oben siehst kommen da noch einige Klassen mit ihren jeweiligen Visual Klassen dazu...
Ich werd mich mal über diese packages informieren und dann mal gucken wie ich sie am besten einbauen kann.
Zitat:
Hoffe das hilft dir jetzt weiter, ich bin auch nicht das "end all" der Java Programmierung aber habe jetzt nach 2 Jahren Uni 2 mittelgrosse Projekte damit entwickelt darunter eine Gruppenarbeit bei der eben low coupling wichtig war da jedes Gruppenmitglied an einem anderen Teil des Codes gearbeitet hat und es eben wichtiog war das diese Klassen gut miteinander koennen und so wenig wie moeglich interdependencies haben.
Wenigstens hast du das Zeug schon zwei Jahre lang...
Ich hock immernoch in der blöden Schule...
Kurze Frage:
Wie ist das Informatik Studium so? Ich will nämlich in zwei Jahren auch Studieren und ich denke dass ich Informatik nehmen werde...
Zitat:
Hab mir deinen code nochmal angesehen und fetgestellt das du fast jede variable 2x hast darf ich Fragen wieso sind das Daten fuer einen Kanal oder fuer 2 weil wenns fuer verschiedene Kanaele ist dann waere die (OOP) vorgehensweise das du 2 Kanal Objekte erstellst und diese dann an eine Berechnungsfunktion uebergibst wenn du z.B 2 Sachen vergleichen willst oder so. Genau das ist ja der Sinn der OOP - one real world object - 1 class
Variablen 2x :
Du denkst sicer das hoehe1 und hoehe2 dass gleiche wären...sind se aber nicht für bestimmte Modelle brauche ich zwei Höhen, nur so als Bsp
Objekte zu Berechnen übergeben:
Ich würde sagen das geht so nicht weil die Objekte unterscheidlich berechnet werden.. Bsp: KanalGerade und KanalBogen
EDIT:
Hab jetzt mal geändert und kompiliert klappt eigentlich super! Apropo super das schreiben der Werte in die Variablen klappt nach der Methode eigentlich recht gut, kann man so was
auf einfache Weise auch für die getter Methoden initialisieren?
mfg
TRX