例如,我有两个名为file1.swift和file2.swift的文件.
file1.swift
import UIKit
class A: B {
}
Run Code Online (Sandbox Code Playgroud)
file2.swift
import UIKit
class C: A{
}
Run Code Online (Sandbox Code Playgroud)
我正在读取公共类不能在模块之外进行子类化.这里我有子类C.我试图理解模块在这里意味着什么.我为这两个文件导入了相同的模块UIKit.那么这两个文件是同一个模块吗?这样我就可以继承了.或者两个文件都有不同的模块,即使我导入相同的UIKit?
任何人都可以解释什么是模块?
资源:
具有公共访问权限或任何更严格的访问级别的类只能在定义它们的模块中进行子类化.
具有公共访问权限或任何更具限制性的访问级别的类成员只能在定义它们的模块中被子类覆盖.
当我尝试这个时,我收到错误:
class ViewController: UIViewController, UIScrollViewDelegate {
......
}
extension ViewController: UIScrollViewDelegate { // Error: Redundant conformance of 'ViewController' to protocol 'UI
....
}
Run Code Online (Sandbox Code Playgroud)
当我尝试这个时,我没有收到错误:
class ViewController: UIViewController {
......
}
extension ViewController: UIScrollViewDelegate { // No error
...
}
Run Code Online (Sandbox Code Playgroud)
为什么我使用扩展时没有将 UIScrollViewDelegate 添加到 ViewController 中?
如果一个类是 UIViewController 类型意味着它符合 UIScrollViewDelegate ?