Scala
在Scala之中,private和protected可以指定额外的参数。可以使用private[AccessQualifier],AccessQualifier可以是this,也可以是其它的类名或包名。这样就可以这么理解:这个成员对所有类都是private,除了自己和AccessQualifier所表示范围内的类。这个概念也是可以递推的,也就是说,如果AccessQualifier是一个类,那么private成员对于AccessQualifier的AccessQualifier也是可见的。
(好优雅的方式啊,我爱Scala。)
Python
老子他喵的没有访问控制,全靠自觉。
Golang
比较粗暴,就靠首字母的大小写区分。没法做到细粒度的控制,不过看起来也不影响绝大多数场景的工程实现。所以是否这样化繁为简的设计哲学,也是一种优雅的设计呢?