Beim Erben einer Klasse in C ++ kann der Benutzer den Zugriffsbezeichner wie folgt angeben:
class Base
{
public int mem1;
protected in mem2;
};
class Derived1 : **private** Base
{
// mem1 will be private here.
// mem2 will be private here.
};
class Derived2 : **protected** Base
{
// mem1 will be protected here.
// mem2 will be protected here.
};
class Derived2 : **public** Base
{
// mem1 will be public here.
// mem2 will be protected here.
};
Dasselbe ist jedoch in Java nicht möglich, dh das Erweitern in Java entspricht immer der "öffentlichen" Vererbung in C ++.
Könnte jemand den Grund dafür erklären?