Zum Inhalt springen

Spezialisierung - Methoden überschreiben + neue Parameter


Cheatboy

Empfohlene Beiträge

Hallo ich hänge hier schon seit einer Weile vor einem Problem und komme da nicht weiter...

Ist es denn möglich (bestimmt ist es das, bei Java ist ja alles möglich ;) wenn ich eine Methode überschreibe der neuen Methode neue Parameter zuzuweißen?

Wenn ich die neuen Parameter in die neue Methode eintrage, wird ja die alte Methode in der Vaterklasse nicht überschrieben...

Hoffe meine Absicht ist verständlich.

Danke für eure Hilfe

Cheatboy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also prinzipiell wird in Java eine Methode anhand ihrer Signatur erkannt.

Die Signatur besteht aus Namen+Parameter+Rückgabe.

Daraus folgt, wenn Du eine Methode definierst die eine andere Parametersignatur hat, ist das nicht "überschreiben", sondern eine ganz normale Methode (außer die Signatur existiert zufällig bereits in Eltern-Elementen).

Link zu diesem Kommentar
Auf anderen Seiten teilen

ja genau das ist ja das Problem.

Wie das Überschreiben funktioniert weiß ich ja größtenteils hab ich ja mit anderen Methoden auch gemacht und bei Eclipse (wo ich nutze) steht ja rechts dann auch "overrides PACKETNAME.ElternMethodenName".

Nur diese eine Methode macht mir zu schaffen.

Ich poste mal die Deklaration der Methode, wenn man das so nennen kann:

Eltern - Methode

public SetWerte setValues(float fEK, float fVK, float fMWST)

{

}

--> wie zu sehen ist, beinhaltet diese Methode 3. Übergabeparameter

-----------------

Kind - Methode

public SetWerte setValues(float fEK, float fVK, float fMWST, int iArtNr, String sName, String sRelease)

{

}

--> Hier sind die neuen Übergabeparameter enthalten, welche ich brauche..

Das, dass falsch ist, ist mir schon längst klar aber wie kann ich nun die neuen parameter dieser Methode sonst zuweißen?

Danke für die Hilfe

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn ich die neuen Parameter in die neue Methode eintrage, wird ja die alte Methode in der Vaterklasse nicht überschrieben...

Das nennt sich Überladen von Methoden.

Überschreiben/Überladen von Methoden - Java @ tutorials.de: Forum, Tutorial, Anleitung, Schulung & Hilfe

Du könntest mit super() in der Kind-Klasse die obere Methode direkt aufrufen:


public SetWerte setValues(float fEK, float fVK, float fMWST, int iArtNr, String sName, String sRelease)

{

    super.setValues(fEK, fVK, fMWST);

}

Bearbeitet von lupo49
Link zu diesem Kommentar
Auf anderen Seiten teilen

vielen Dank - jetzt habe ich schonmal den Inhalt der Paramter, das ist ja schonmal was ;)

Nun habe ich jedoch immer noch ein paar Probleme...

Leider sind diese durch sturres Ablesen eines Textes bestimmt nicht ganz schlüssig, deshalb nehme ich mir Freiheit und Hänge mein Java Projekt mal an (keine Sorge das ist nicht soviel zu Lesen für einen Java Pro)

Wenn ihr das Programm startet solltet ihr in der Konsole auf den print nach dem/vor dem roten print achten. Dort stehen im Prinzip Objekte wo ich zu einem String umgewandelt habe. Das Problem ist, dass nicht alle Werte stehen, wie bsp. Artikelnnummer/Name/Erscheinungsdatum -> Das ist das eine was mich plagt, was sicherlich schnell behoben sein sollte und ich mal wieder bestimmt nur wenige Anschläge java code vergessen habe...

Das andere ist, die erstelle "java.csv" datei, welche ihr unter "c:" finden solltet.

Wenn ihr diese öffnet stehen dort alle Werte drinnen, außer bei 2 - dort steht "0.00" hier soll(te) eigentlich die ermittelte verkaufspreis_netto/deckungsbeitrag stehen - tuts aber nicht...

Ich bin an der Stelle schon 1 1/2 Tage dran, komme aber nicht wirklich weiter...

Für kleine Hilfsschupfer wäre ich euch sehr verbunden!

MfG,

Cheatboy

Java_ProjektFebruar.zip

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn ihr das Programm startet solltet ihr in der Konsole auf den print nach dem/vor dem roten print achten. Dort stehen im Prinzip Objekte wo ich zu einem String umgewandelt habe. Das Problem ist, dass nicht alle Werte stehen, wie bsp. Artikelnnummer/Name/Erscheinungsdatum -> Das ist das eine was mich plagt

Ich bekomme als Ausgabe:

Vaterklasse

Einkaufspreis netto beträgt: Verkaufspreis brutto beträgt: MwSt. - Satz beträgt: Verkaufspreis netto beträgt: Deckungsbeitrag beträgt:Artikelnummer beträgt:

24.95€ 35.0€ 19.0% 29.41€ 4.46€ 2417 Java ist bloß kalter Kaffee 15.02.2010

24.95; 35.0; 119.0; 29.41; 4.46;

Und was stimmt daran nicht? Was fehlt dir genau? Poste doch mal die entsprechende Stelle im Quellcode.

Das andere ist, die erstelle "java.csv" datei, welche ihr unter "c:" finden solltet.

Wenn ihr diese öffnet stehen dort alle Werte drinnen, außer bei 2 - dort steht "0.00" hier soll(te) eigentlich die ermittelte verkaufspreis_netto/deckungsbeitrag stehen - tuts aber nicht...

An welcher Stelle schreibst Du denn neue Werte in die Datei und speicherst sie neu? Nochmal die Bitte, relevante Code Stellen zu posten und keine ganzen Packages. Soll sich jeder die Mühe machen und Deinen kompletten Code durchzuarbeiten?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...