例子
class A:
def __init__(self, var1):
self.var1 = var1
self.__var2 = var1
def get(self):
return self.var2
def get2(self, var):
return getattr(self, var)
instance = A("123")
a = instance.var1
b = instance.get()
c = instance.get2("var2")
从灵活性角度来讲, a=c>b ,
从速度来讲 b 的耗时约是 a 的 1.5 倍, c 的耗时约是 a 的 2.5 倍,
从代码健壮性角度来看,也许是反过来的。
Q1 假如我把这个操作封装在某个函数里,那么,在那个函数里还有必要做这种访问限制吗?
Q2 在使用者能获取到源代码的情况下,有必要做这样的限制吗?
Q3 一般什么样的实际情况下才会添加这种访问限制?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.