1. Swift3提供的几种访问级别
- open: 表示当前类、属性或者方法可以在任何地方被继承或者override;
- public: 表示当前类、属性或者方法只能在当前module内被继承或者override,在当前module以外只能被访问;
- Internal:默认级别,表示当前类、属性或者方法只能在当前module内被访问,继承和override;
- ** fileprivate**:文件内私有属性和方法,仅在当前文件中可以访问,包括同一个文件中不同的类;
- private:类私有属性和方法,仅在当前类中可以访问,不包括分类;
- final:是一个辅助修饰词,表示当前类、属性或者方法在任何地方都只能被访问,不能被继承或者override;
其他:
可以通过private(set)或internal(set)先为它门的写权限申明一个较低的访问级别。<br />
2. defer关键字
defer关键字将后面{}里的代码延迟到该方法return前一步调用
3. static和class
static修饰的方法不能在子类override, class修饰的可以在子类override
网友评论