Programmieren in Eclipse / Schule

$l@$iC

Ensign
Dabei seit
Dez. 2005
Beiträge
169
Hallo,

ich habe in der Schule das Fach DV wo wir programmieren müssen und jetzt butzen wir das Programm Eclipse und die Sprache "java".

Und so sachen wie Vererbung oder wozu die Hauptklasse und Fachklasse dienen verstehe ich einfach nicht.

Könntet Ihr mir die Grundlagen einfach erklären?

Würde mich hammer freuen!

Mfg
 
AW: Programmieren in Eclipse / Schule / Hilfe!!

»Könntet Ihr mir die Grundlagen einfach erklären?«

Sollte nicht gerade das Bestandteil des Unterrichts sein? ;-)
 
AW: Programmieren in Eclipse / Schule / Hilfe!!

eigentlich ist ja dein lehrer dazu da, dir das verständlich nahe zu bringen ;) ansonsten, wie flugser schon schrieb, das open-book java ist ist auch nur eine insel lesen ;)
das thema ist nämlich ein bisserl zu umfangreich, als das man es so mal eben hier verständlich und kurz niederschreiben könnte.. ;)
 
AW: Programmieren in Eclipse / Schule / Hilfe!!

Was ist das den für ne kack schule. Frag doch einfach mal deinen Lehrer, der wird immerhin dafür bezahlt dir des richtig zu erklären!
 
AW: Programmieren in Eclipse / Schule / Hilfe!!

Der erklärt es so, dass 90% der Klasse es nicht verstehen... .(
 
AW: Programmieren in Eclipse / Schule / Hilfe!!

Nur durch zuhören kann man Programmieren nicht lernen.

Da muss man sehr viel selber machen.

Selbst wenn der Lehrer das perfekt erklärt, ohne eigene Awendung wird es nix.
 
AW: Programmieren in Eclipse / Schule / Hilfe!!

wenn aber 90% nix versteht, stimmt da was nicht.. selbstverständlich sollte man auch selber nebenher sich einlesen, und alles nacharbeiten.. aber wenn die grundlage des lehrers nicht passt, kann man den unterricht gleich sein lassen.. ihr solltet mal mit dem lehrer reden...
 
AW: Programmieren in Eclipse / Schule / Hilfe!!

Der erklärt es so, dass 90% der Klasse es nicht verstehen... .(

Das erlebt man leider oft, würde versuchen mit der Lehrkraft zu reden, ggf. mit den Rektor in Verbindung setzen. Ich kenn das leider auch vom Studium :(
Er wird dafür bezahlt euch etwas zu vermitteln, aber etwas Eigeninitiative vorallem in dem Fach ist auch von Nöten.
 
AW: Programmieren in Eclipse / Schule / Hilfe!!

Das Problem ist, dass er mit uns redet als wären wir seine Kollegen, die sich mit dem ganzem Zeug schon total auskennen und für die, dass was sie da machen logisch und selbstverständlich ist... :(
 
AW: Programmieren in Eclipse / Schule / Hilfe!!

Verrerbung ist recht einfach zu erklären, dazu sollte man aber schon wissen, was eine Klasse ist und was Attribute und Methoden sind:

Eine Klasse verrerbt seine Attribute und Methoden an die Klassen weiter, die hierarchisch unter Ihr angesiedelt sind. Damit stehen den sog. Subklassen die Attribute und Methoden der entsprechenden sog. Superklasse zur Verfügung (soweit erlaubt, aber das soll Dir bitte Dein Lehrer erklären, bin ja kein Nachhilfelehrer). Die Subklasse kann dann zusätzliche Attribute und Methoden erhalten und geerbte ggf. überladen (was das genau ist, soll Dir bitte auch Dein Lehrer erklären).


Das Konzept von Haupt- und Fachklassen ist da schon aweng komplizierter:

Am besten ein Beispiel: Die Klasse "Lebewesen" ist quasi mal die Haupklasse (Superklasse) und relativ abstrakt gehalten (sehr wenig Attriburte, nur Grundlegendes wie z.B. "Geburtstag" ist implementiert). "Säugetier" wäre nun eine Subklasse von "Lebewesen", ist aber immer noch abstrakt (also nur wenige weitere Attribute und Methoden).
Mögliche Fachklassen wären jetzt z.B. "Zweibeiner" und "Vierbeiner", die bereits spezifische Attribute und Methoden besitzen können (aber nicht müssen). Eine weitere Subklasse von "Zweibeiner" wäre "Mensch". In diesem Fall ist "Zweibeiner" die Hauptklasse und "Mensch" die Fachklasse, da "Mensch" alle menschenspezifischen Attibute und Methoden besitzt.

Und jetzt ab in die Schule und den Lehrer den Rest fragen... ;)

Hoffe ich konnte helfen...
 
AW: Programmieren in Eclipse / Schule / Hilfe!!

Ja, ok was Vererbung ist weis ich, nur ich weis nicht genau wie man es dann programmiert.

Nur das "extands" oder kommt noch was ?

Kann man des auch so sagen?

KFZ ist die Hauptklasse, wäre dann BMW oder Auto die Subklasse? Eigentlich Auto oder ? Und die Subklasse von Auto wäre dann BMW und somit Auto die Hauptklasse ?

Das ist ca. dass was ich gesucht habe, super :D

Edit:
Zur vererbung weis ich noch, dass die Hauptklasse zB. nur einfach Attribute hat und dier vererbten Klassen übernehmen diese und dann werden den vererbten Klassen noch zusätzliche Attribute hinzugefügt, die diese Klasse dann spezifizieren.


Ich hätte noch eine Frage, was ist eine Startklasse, wir haben da so ein Beispiel Blatt und so wie ich das deute gibt die Startklasse Objekte aus (Auf den Bildschirm) und sie hat keine Attribute.
 
Zuletzt bearbeitet:
AW: Programmieren in Eclipse / Schule / Hilfe!!

Ja, "extends" ist das Schlüsselwort zum definieren einer Subklasse. Natürlich musst Du nach "extends" noch die Klasse nennen, von der geerbt werden soll.

Zu Deinem Auto-Beispiel:
"KFZ" wäre in Deinem Beispiel die Hautpklasse von "Auto", "BMW" ist allerdings dann eine Instanz von Auto und keine eigene Klasse, da BWM ja ein Auto bzw. ein Hersteller ist ("Auto" hätte dann Attribute implementiert wie z.B. Typ, Hersteller, Modell, Baujahr usw). Frag mal Deinen Lehrer bzgl. Spezialisierung.

Codefragment:

einAuto Auto;
einAuto = new Auto("1er", "BMW", "116i", "2004");

Eine andere (bessere) Möglichkeit wäre, eine Klasse "Hersteller" einzuführen und dem "Auto" dafür ein Referenzattribut zu verpassen. D.h. "Auto" hat alle autospezifischen Attribute und Methoden und einen Bezug zum "Hersteller", der wiederum alle herstellerspezifischen Attribute und Methoden hat.

Codefragment:

einHersteller Hersteller;
einAuto Auto;

einHersteller = new Hersteller("BMW");
einAuto = new Auto("1er", einHersteller, "116i", "2004");

/* Hersteller ist hier ein eigenes Object, das im Auto-Attribut Hersteller gespeichert ist */

Idealerweise würde man den Fahrzeugtyp auch als eigene Klasse definieren, so kann man ein Objektmodell ala "jedes Auto hat einen Hersteller und Hersteller produzieren verschiedene Typen" erstellen, das dann in Richtung Allgemeingültigkeit erweitert werden kann...

Zur Startklasse:
Die Startklasse ist die Klasse, bei der die Vererbung beginnt. Standardmäßig ist das "Object", und "Object" kann fast nix (was ja auch richtig ist, die Spezialisierung kommt weiter unten im Vererbungsbaum). "Object" gibt nix aus (schon gar nicht am Bildschirm, da "Object" dumm ist und keine Ahnung hat, was ein Bildschirm ist), von "Object" erben nur alle... Vielleicht hat sich da Euer Lehrer in seinem Beispiel einfach nur irgendwas ausgedacht und als Startklasse eine Klasse definiert, die Objekte auf dem Bildschirm ausgeben kann, dadurch könnten alle Subklassen das dann auch...
 
Zuletzt bearbeitet: (Codefragmente eingefügt)
AW: Programmieren in Eclipse / Schule / Hilfe!!

@muesler
Erstmal danke, dass du so einem Idi wie mir versuchdt zu helfen. :D

So langsam komme ich dem ganzem Gedankengang auf die Spur, werde nächste Woche meinen Lehrer noch bissl ausfragen und jetzt probiere ich noch bissl in Eclipse rum.(Habe jetzt noch Ferien :D ).

Was ich halt gedacht habe war:
Dass Bmw eine Klasse sein sollte weil sie dann die Attribute wie Motoren, Modelle usw... hätte.
Ich hatte da so ein Bild vor meinene AUgen, dass man auf einer Site ist, dort wählt man seien Hersteller und dann hat man das ganze Zeug halt vom Hersteller. -_-

Irgendwie glüht mein Kopf gerade...
 
AW: Programmieren in Eclipse / Schule / Hilfe!!

"BMW" kann nie eine Klasse sein, nur eine Instanz (Ausprägung) davon.
Du bist ja auch keine eigene Klasse, sondern eine Instanz (ein Individuum) von Mensch.
Wäre es anders, müsste man (um wieder auf Dein Autobeispiel zu kommen) für jeden Hersteller eine eigene Klasse definieren, die tausend Herstellerklassen hätten dann aber immer die gleichen Attribute wie Name, Geschäftsführer, Umsatz usw... Wenn man auf sowas trifft, dann hat man was falsch gemacht beim Modellieren der Objekte.
Oder konkret: 'BMW' ist eine Instanz der Klasse 'Hersteller', bei der das Attribut 'Name' den Wert "BMW" hat. 'AUDI' ist ebenfalls eine Instanz der Klasse 'Hersteller', hier ist im Attribut 'Name' "AUDI" hinterlegt.

Gerne kannst Du Deinen Lehrer auch anhand/mit Hilfe meiner bzw. Deiner Beispiele löchern ;)

BTW: das mit dem "Kopfglühen" ist völlig normal, ging mir auch nicht anders, aber nach 15 Jahren Übung hat man es dann doch irgendwann kapiert ;)
 
Zuletzt bearbeitet:
Zurück
Top