Study-Board.de
  1. Suche
  2. Startseite
    1. Blog
  3. Forum
    1. Dashboard
    2. Unerledigte Themen
    3. Datenbanken
    4. Gamification
  4. Tippspiel
    1. Rangliste
    2. Tippgemeinschaften
    3. Tipper-Übersicht
    4. Meine Statistik
    5. Hall of Fame
    6. WM-Wertung
  5. Semantic
  6. Poll
  7. Formel 1
    1. Rennen
    2. Fahrer
    3. Teams
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Forum
  • Artikel
  • Seiten
  • Termine
  • Galerie
  • wcf.search.type.de.flexiblelist.wsc.entry
  • wcf.search.type.com.amp.advancedpoll.search
  • Erweiterte Suche
  1. Study-Board.de
  2. Forum
  3. Fachforen Wirtschaftswissenschaften
  4. Wirtschaftsinformatik

Vererbung

  • jungspundi
  • 8. August 2009 um 18:40
  • Erledigt
  • jungspundi
    Anfänger
    Beiträge
    16
    • 8. August 2009 um 18:40
    • #1

    Hallöchen ich hab hier irgendwie den Durchblick verloren.

    Könnt ihr mir nur mal sagen ob ich das richtig sehe....

    es heißt doch abgeleitete Klassen übernehmen immer alle Attribute der Hauptklasse..

    Die abgeleitete Klasse hat doch kann dann aber trotzdem nicht auf private Attribute zugreifen ist das richtig? oder sehe ich das jetzt falsch?

  • ENIAC
    Anfänger
    Beiträge
    18
    • 10. August 2009 um 16:33
    • #2

    Hallo jungspundi,
    das siehst du vollkommen korrekt. Der Bezeichner private lässt nur Zugriff aus der Klasse selbst zu. Auch abgeleitete Klassen haben keinen Zugriff auf das entsprechende Attribut. Soll es von der Child-Klasse dennoch zugreifbar sein, ist der Bezeichner protected zu wählen.

    Viele Grüße,
    ENIAC

  • jungspundi
    Anfänger
    Beiträge
    16
    • 10. August 2009 um 19:17
    • #3

    ok :)

    könnte es natürlich auch komplett public machen was natürlich völlig sinnlos ist *grinst*

    gibts noch ne andere Möglichkeit den Zugriff zu ermöglichen?

  • ENIAC
    Anfänger
    Beiträge
    18
    • 11. August 2009 um 08:33
    • #4

    Klar, die gibt es:

    (1) Verwende protected. Es könnte evtl. als Nachteil gesehen werden, dass das Geheimnisprinzip bzw. das Prinzip der Datenkapselung ein wenig aufgebrochen wird. Z.B. kann jeder der eine Unterklasse schreibt, bzw. mit dieser arbeitet direkt auf die Werte zugreifen. Das kann ungeschickt sein, wenn später der Quellcode der Oberklasse geändert wird und der Wert durch eine Funktion berechnet wird. Das kann umgangen werden durch:

    (2) Verwende weiterhin (und konsequent) den Bezeichner private. Für den Zugriff auf das Attribut stellst du Methoden zur Verfügung (getter & setter). Allerdings muss nicht zu jedem Attribut zwingend ein getter und ein setter existieren. In den Methoden können ggf. Rechte (Lese- Schreibrecht) geprüft werden.

    Viele Grüße,
    ENIAC

  • jungspundi
    Anfänger
    Beiträge
    16
    • 11. August 2009 um 19:34
    • #5

    mhm ok das sind 3 Varianten wie man das direkt bei der Vereinbarung regelt.... gibts auch ne Möglichkeit später im Quelltext?

  • ENIAC
    Anfänger
    Beiträge
    18
    • 12. August 2009 um 08:45
    • #6

    Die Frage verstehe ich nicht.
    Die Vorschläge lassen sich so implementieren :victory:

    Viele Grüße,
    ENIAC

  • jungspundi
    Anfänger
    Beiträge
    16
    • 12. August 2009 um 22:26
    • #7

    *grinst*

    es ist im folgenden Aufgabe ich soll 3 Möglichkeiten nennen und bewerten die es möglich machen das eine abgeleitete Klasse auf das Attribut einer Basisklasse zugreifen kann.

    2 hängen direkt mit der Vereinbarung des Attributs zusammen (alos public, protected, privat) und das dritte nicht ... und da stehe ich grade aufm Schlauch

  • ENIAC
    Anfänger
    Beiträge
    18
    • 13. August 2009 um 08:39
    • #8

    Na dann würde ich sagen:

    (1) public attrName; // direkter Zugriff
    (2) protected attrName; //direkter Zugriff
    (3) getAttr(); //Zugriff per get-Methode

    zu (3):
    z.B. folgende Signatur der get-Methode:

    Code
    public int getID()
    {
     return this.ID;
    }

    Die Methode ist öffentlich zugänglich, es spielt also keine Rolle, welche Sichtbarkeit das Attribut hat. Sinnvoll ist diese Art der Implementierung, da man volle Kontrolle über die "Berechnung" hat. D.h. wenn sich im Inneren der Methode etwas an der Berechnung verändert ist das für denjenigen, der die methode aufruft völlig egal.
    Weiterer Vorteil:

    z.B. folgende Signatur der get-Methode:

    Code
    public int getID(bool read)
    {
    if(read)
     return this.ID;
    else
    return -1;
    }

    Man kann prüfen, ob der Aufrufer entsprechende Leserechte hat. Ist das nicht der Fall kann ein Fehlerwert zurückgegeben werden.

    Viele Grüße,
    ENIAC

  • jungspundi
    Anfänger
    Beiträge
    16
    • 16. August 2009 um 10:52
    • #9

    super danke für deine Hilfe :)

Letzte Beiträge

    1. Thema
    2. Antworten
    3. Letzte Antwort
    1. ITB14 Online Steuerwesen 2

      • Fischi
      • 25. Dezember 2017 um 21:36
      • Wirtschaftsinformatik
      • Fischi
      • 23. Juni 2023 um 22:38
    2. Antworten
      2
      Zugriffe
      6,1k
      2
    3. Tutor

      23. Juni 2023 um 22:38
    1. Wirtschaftsinfo auf einer FH oder auf einer normalen Hochschule?

      • StelzerJan
      • 20. Mai 2016 um 15:47
      • Wirtschaftsinformatik
      • StelzerJan
      • 20. Mai 2016 um 15:47
    2. Antworten
      0
      Zugriffe
      3,3k
    1. Normalisierung einer Datenstruktur 2

      • Normalform
      • 7. November 2014 um 22:30
      • Wirtschaftsinformatik
      • Normalform
      • 19. Mai 2015 um 20:12
    2. Antworten
      2
      Zugriffe
      3,2k
      2
    3. Abiturient2015

      19. Mai 2015 um 20:12
    1. Winfo studieren aber wo? (Dresden, Jena, Leipzig, Münster) 6

      • Blumtopf
      • 1. August 2010 um 18:52
      • Wirtschaftsinformatik
      • Blumtopf
      • 25. November 2014 um 12:01
    2. Antworten
      6
      Zugriffe
      11k
      6
    3. Phillip Meier

      25. November 2014 um 12:01
    1. Normalsierung in die 3te Form 3

      • SchockoExperte
      • 24. April 2014 um 12:38
      • Wirtschaftsinformatik
      • SchockoExperte
      • 28. April 2014 um 12:39
    2. Antworten
      3
      Zugriffe
      4,2k
      3
    3. SchockoExperte

      28. April 2014 um 12:39
    1. SQL Anweisungen_ Datenbank

      • Nastia
      • 22. Juni 2013 um 11:31
      • Wirtschaftsinformatik
      • Nastia
      • 22. Juni 2013 um 11:31
    2. Antworten
      0
      Zugriffe
      1,8k
    1. Computersystem: Welche Komponenten sind für den Betrieb zwingend erforderlich? 4

      • Vegeta77
      • 29. Januar 2012 um 19:37
      • Wirtschaftsinformatik
      • Vegeta77
      • 4. Januar 2013 um 01:44
    2. Antworten
      4
      Zugriffe
      7,1k
      4
    3. PoWiJan

      4. Januar 2013 um 01:44
    1. Hilfe zu Datenbanken 7

      • Steffi_22
      • 3. Oktober 2006 um 14:40
      • Wirtschaftsinformatik
      • Steffi_22
      • 29. Dezember 2012 um 12:00
    2. Antworten
      7
      Zugriffe
      9,6k
      7
    3. HaPe

      29. Dezember 2012 um 12:00
    1. Zeitmanagement Einsendeaufgabe OFMA 5 1

      • Vegeta77
      • 21. Februar 2012 um 19:29
      • Wirtschaftsinformatik
      • Vegeta77
      • 27. Februar 2012 um 00:00
    2. Antworten
      1
      Zugriffe
      3,4k
      1
    3. Carvingsteve

      27. Februar 2012 um 00:00
    1. Datenbank verknüpfen mit Visual Basic

      • Jeromé
      • 9. Februar 2011 um 21:00
      • Wirtschaftsinformatik
      • Jeromé
      • 9. Februar 2011 um 21:00
    2. Antworten
      0
      Zugriffe
      2,1k

Letzte Beiträge

  1. ITB14 Online Steuerwesen

    Tutor
    23. Juni 2023 um 22:38
  2. Wirtschaftsinfo auf einer FH oder auf einer normalen Hochschule?

    StelzerJan
    20. Mai 2016 um 15:47
  3. Normalisierung einer Datenstruktur

    Abiturient2015
    19. Mai 2015 um 20:12
  4. Winfo studieren aber wo? (Dresden, Jena, Leipzig, Münster)

    Phillip Meier
    25. November 2014 um 12:01
  5. Normalsierung in die 3te Form

    SchockoExperte
    28. April 2014 um 12:39

Statistiken

Themen
58.802
Beiträge
112.907
Termine
0
Bilder
0
Videos
0
Mitglieder
37.013
Meiste Benutzer online
17.968
Neuestes Mitglied
sammysule

  1. Tutor Lv. 5 12.704 XP
  2. admin Lv. 2 200 XP
  3. cklawitter Lv. 1 30 XP
  4. 4
    sieger81 Lv. 1 10 XP
  5. 5
    Polarlys Lv. 1 5 XP
  6. 6
    Phillip Klenner Lv. 1 5 XP
  7. 7
    Hermann Eisele Lv. 1 5 XP
  8. 8
    Wilhelm28 Lv. 1 2 XP
Vollständige Bestenliste
  1. Dealfuchs.info
  2. Impressum
    1. Datenschutzerklärung
    2. Verhaltenskodex
      1. Learn to Post
  3. Mediadaten
  4. Study-Talk.de - Rabatte nicht nur für Studenten
  5. Kontakt
Community-Software: WoltLab Suite™