一、各个修饰的区别 1. private 绝对私有,除了在当前类中可以访问外,在其他类或该类的扩展中都不能访问 2. fileprivate 文件私有,可以在当前类文件中访问,在其他文件中不能访问 3. internal 默认访问级别,可写可不写,可以在整个模块内被访问。 如果是框架或者库代码,则在整个框架内部都可以访问,框架由外部代码所引用时,则不可以访问。 4. public 可以被任何人访问。但其他模块中不可以被 override 和继承,而在模块内可以被 override 和继承。 5. open 可以被任何人使用,包括 override 和继承。