三个权限都可以修饰类、属性、方法
- public : 最大权限,可以在当前framework和其他framwork中访问;
- **internal : **默认权限,可以在当前framework中随意访问;
- **private : **私有权限,只能在当前文件中访问;
注意:
1.在企业开发中建议严格控制权限,不想让别人访问的东西一定要private;
2.如果给按钮的监听方法加上private会报错,原因是监听事件是由运行循环触发的,而如果该方法是私有的只能在当前类中访问;而相同的情况在OC中是没有问题的,因为OC是动态派发的,Swif中的所有东西都是在编译时确定的;如果想让在Swift方法也支持动态派发,可以在方法前面加上@objc。加上@objc就代表告诉系统需要动态派发
@objc private func compseBtnClick(btn: UIButton)
{
print("hhhhh")
}