Az első esetben sem lehetsz biztos benne. pl.:
public void setY(Valami param) { y = param; }
Ezért írtam, hogy "potenciálisan futni fog", egy jelzés a nyelvben, hogy számíthatok akár kivételre is a hívás során.
Tehát a protected láthatóság használata teljesen kerülendő.
Reflection-nel pedig ki tudod olvasni a privát mező értékét is bárhonnan. És? Ettől még a private láthatóság jól jön és lehet rá építeni, csakúgy, mint a protected láthatóságra, amelynek célja az, hogy egy osztályt leszármaztatva hozzá tudj férni mezők értékéhez vagy felül tudj definiálni metódusokat.
A Scala nagyon jó, de mutass Scala alapokon félmillió soros projektet, ha találtál ilyet, akkor mutass közülük olyat, amely nem szenved attól, hogy nincs igazán IDE támogatás, se fejlesztői hozzáértés. :)
--
http://wiki.javaforum.hu/display/FREEBSD