Java Hausaufgaben...

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Java Hausaufgaben...

    Servus!
    Sitz hier grad vor meinen Algorithmik Hausaufgaben und hab mir dabei gedacht, des es hier doch bestimmt ein paar schlaue Koepfe gibt, die mir mit meinen Java-Problemen helfen koennten :)...
    Hier mal die ersten 3 Aufgaben (mit dem Rest werd ich selbst fertig :) ) :

    a) Erklaeren sie den Unterscheid zwischen ueberschriebenen und ueberladenen Methoden. Erklaeren die den Begriff der Signatur und die Unterschieder der beiden Faelle an einem selbstgewaehlten Beispiel.

    b) Warum muessen die Methoden eines Interfaces nicht implementiert werden? Werden diese deklarierten Funktionen ueberhaupt implamentiert und wenn ja, wo? Was passiert mit einer Klasse, die ein Interface nicht vollstaendig implementiert?

    c) Sie haben eine Klasse Konto implementiert, deren Member int Kontostand durch das Attribut private geschuetzt ist. Trotzdem benoetigen sie eine Art und Weise, wie sie denn Kontostand veraendern koennen. Warum funktioniert konto k = new konto(); k.kontostand = 60; nicht? Wie koennen sie dennoch einen Weg vorsehen den Kontostand zu aendern?
    ---> Ist die Antwort: "...weil eine durch private geschuetzte Variable nur innerhalb der Klasse geaendert werden kann, jedoch nicht wenn amn von aussen auf sie zugreift." ?

    Waere echt cool wenn mir jmd bei den paar Aufgaben helfen koennte!

    mfg CptOxydizer
  • Ich weiss ja nicht ob das immer noch aktuell ist, jedenfalls ist es wirklich nur halb so wild:

    a) überschrieben: Du deklarierst eine Methode, die eine andere Überschreibt, beispielsweise aus einer darüberliegenden Klasse, somit ist nur noch deine Methode vorhanden, die andere jedoch nicht mehr.
    überladen: Die definiert die selbe Methode mit verschiedener Signatur, die Signatur sind die Parameter einer Methode. Somit kannst du die gleiche Methode mit unterschiedlichen Parametern aufrufen, je nach dem welche Parameter übergeben werden, merkt java welche Methode es ausführen muss.

    b) em, ich dachte immer es ist zwingend alle klassen eines Interfaces zu implementieren? So hab ich das zumindest gelernt und eigentlich macht es auch nur so sinn :)

    c) deine antwort ist fast richtig. Ist eine Variable mit "private" definiert, ist sie nur innerhalb der Klasse verfügbar. Willst du nun doch auf sie Zugreifen hast du nur zwei möglichkeiten:
    -sie public machen (also den private-schutz aufgeben)
    -accessor-methoden schreiben

    Accessor methoden sind public, und dienen dazu deine private variable zu setzen, also beispiel:

    Quellcode

    1. private int kontostand;
    2. public int getKontostand() {
    3. return this.kontostand;
    4. }


    wenn du nachher damit arbeitest kannst du folgendes machen:

    Quellcode

    1. Konto k = new Konto();
    2. int kstand = k.getKontostand();



    Ich hoffe das war verständlich.

    -purx
    [SIZE=1]"There's no right, there's no wrong, there's only popular opinion." Jeffrey Goines (Brad Pitt) in Twelve Monkeys[/SIZE]

    [SIZE=1]$ killall chico[/SIZE]