我刚刚注意到,ViewController.swift (Interface)
当我创建第一个ViewController时,Xcode会自动创建一个名为的文件.
Swift中的类是否需要与Objective-C中的接口相同,并且是由Xcode在幕后创建的?
有人可以这么善良并解释这个文件的目的是什么?
ViewController.swift(接口)
import UIKit internal class ViewController : UIViewController { override internal func viewDidLoad() override internal func didReceiveMemoryWarning() }
Nicolas Miar.. 14
在C和Objective-C中,您有单独的接口(.h)和实现(.c,.m)文件.
接口文件可以快速查看该类可用于其他代码的所有方法和属性(前提是它们导入了接口文件).这就像一本书的章节索引.
另一方面,实现是编写实际方法代码的地方.
另一方面,在Swift中,没有这样的区别,并且所有代码都可以自动使用类.当然,优点是项目中的源文件数量大致减少了一半,并且在编码时不需要在接口文件和实现文件之间来回切换(它们都在"一个地方") ).
因此,为了弥补缺少"仅接口"文件(如C/Objective-C中的标题),Xcode生成一个"动态",只是为了向您展示可用的方法和属性.类.您会注意到方法体缺失,以及声明为的属性和方法private
(因为它们在类外是不可访问的,因此根据定义不是"接口"的一部分).
它不是一个存在于文件系统中任何位置的真实文件(据我所知).
在C和Objective-C中,您有单独的接口(.h)和实现(.c,.m)文件.
接口文件可以快速查看该类可用于其他代码的所有方法和属性(前提是它们导入了接口文件).这就像一本书的章节索引.
另一方面,实现是编写实际方法代码的地方.
另一方面,在Swift中,没有这样的区别,并且所有代码都可以自动使用类.当然,优点是项目中的源文件数量大致减少了一半,并且在编码时不需要在接口文件和实现文件之间来回切换(它们都在"一个地方") ).
因此,为了弥补缺少"仅接口"文件(如C/Objective-C中的标题),Xcode生成一个"动态",只是为了向您展示可用的方法和属性.类.您会注意到方法体缺失,以及声明为的属性和方法private
(因为它们在类外是不可访问的,因此根据定义不是"接口"的一部分).
它不是一个存在于文件系统中任何位置的真实文件(据我所知).