在Objective-C实例中,数据可以是public,protected或private.例如:
@interface Foo : NSObject
{
@public
int x;
@protected:
int y;
@private:
int z;
}
-(int) apple;
-(int) pear;
-(int) banana;
@end
Run Code Online (Sandbox Code Playgroud)
我没有在Swift参考中找到任何访问修饰符.是否可以限制Swift中数据的可见性?
我来自Java背景,当你声明内部类时,它是静态的,并且无法访问外部类的实例,或者它不是静态的,并且可以访问正在进行的外部类的实例经营.见http://en.wikipedia.org/wiki/Inner_class#Types_of_nested_classes_in_Java
斯威夫特有这个概念吗?从我的测试中,我似乎无法获得访问Outer的self对象,但我绝对可以做一些错误.
class Outer {
let value = ""
class Inner {
func foo() {
let bar = value // 'Outer.Type' does not have a member named 'value'
}
}
}
Run Code Online (Sandbox Code Playgroud)