# Vererbung verletzt generell Kapselung, die eine Klasse bietet.



## cheat.008 (9. Jun 2018)

Stimmt das oder nicht?
Angenommen Klasse B erbt von Klasse A und Klasse A hat private Attribute, dann werden die doch von Klasse B nicht mitgeerbt und somit ist die Datenkapselung doch nicht verletzt worden oder?


----------



## Tarrew (9. Jun 2018)

Die Unterklasse enthält auch die privaten Attribute, sie sind für die Unterklasse nur nicht sichtbar. 

```
public class Test {
    public static void main(String[] args) {
        Unterklasse u = new Unterklasse();
        u.print();
    }

    static class Oberklasse {
        private String text = "Irgendein Text";

        public void print() {
            System.out.println(text);
        }
    }

    static class Unterklasse extends Oberklasse {

    }
}
```


----------



## cheat.008 (9. Jun 2018)

Ok, also ist die Kapselung ja doch verletzt.

Oder wie interpretiert man das dann? Denn die Unterklasse sieht die priv. Attribute ja nicht.


----------



## Tarrew (9. Jun 2018)

Ich kann deinen Gedankengang erlich gesagt nicht ganz nachvollziehen.

Warum sollte die Datenkapselung verletzt sein, wenn die Unterklasse die privaten Attribute nicht sieht? Wie ist deine Definiton von Datenkapselung ?


----------



## cheat.008 (9. Jun 2018)

Ja falsch gedacht. Du hast recht, danke fürs auf die Sprünge helfen.


----------

