Hallo,
Warum das so ist, ist eine Grundlage der OOP. Wenn du nicht OO programmierst, brauchst du vielleicht keine Kapselung.
@Struppi: Du weißt doch, dass dies eine sehr eingeschränkte Definition von OOP ist, die so keineswegs allgemein gültig ist. Es gibt Konzepte, die OOP ganz ohne Vererbung fassen, ...
Wer hast denn jetzt plötzlich von Vererbung gesprochen?
Naja, wenn es um "protected" geht, dann ist das m.E. eine Variable, die vererbbar privat ist. Also wenn ich nicht von protected rede, dann ist privat, wie andere es ja auch sehen, bei JS ident mit dem, was PHP als private anbietet. Die Kapselung wird durchs Closure geboten und ich habe durch previlegierte Funktionen zugriff darauf. Nicht direkt ansprechbar, nur durch public methods. Die Kapselung ist doch aber kein Begriff, der für OOP steht. Bzw. findet sich das doch (Closures) bei Funktionen und ggfs. "funktionaler Programmierung" genau so, hätte ich jetzt gemeint.
Gruß
jobo