我这里已经对__name进行封装了,为什么还是能调用封装的类属性?
这个是在类Person上的私有属性(因为self),在当前类中的任何函数都可以调用,如果在外部就不能调用了,例如 a.__name 就掉不出来
property是属性,你现在这是想弄个私有字段吧
在类成员里面self.__name (假设name是个字符型变量)相当于 Java 中的 private String name;外部不能直接访问,需要通过接口访问(get/set放法)。
self._name 相当于Java 中的 protected String name;
self.name 相当于Java 中的 public String name;