Indeed Java is even worser with its 4 visibility states :smile:. Thanks to PHP this is possible. I worked a lot with different OO languages and I find this interpretation ok, cause we are in the scope of the class, although we access another instance, but this makes implementations a lot easier than expose getters or internal properties, when working with another instance of the same class.