构造过程是为了使用某个类、结构体或枚举类型的实例而进行的准备过程,在构造过程中,对每个属性进行了初始值预设和其他必要的准备和初始化工作。
与OC相比,swift的构造函数,不需要返回值。同时,在类和结构体的构造过程中,必须对所有的存储类型属性,包含继承自父类的属性,赋予合适的初始值。存储类型值不能处于一个未知状态。
在对属性进行初始化过程中,有两种方法,第一:使用构造方法,第二:在定义属性时,...
分类:
其他好文 时间:
2014-06-22 22:48:43
阅读次数:
340
一 、扩展
扩展是为一个已经存在的类、结构、枚举类型添加新功能的一种方式,包括为不能存取源代码的那些已经存在的类型添加功能。
扩展类似于Objective-C语言中的类别,与类别不同的是Swift语言的扩展没有名字。
扩展能够为已存在类型:
1)增加计算属性和计算静态属性;
2)定义新的实例方法和类型方法;
3)提...
分类:
移动开发 时间:
2014-06-22 20:37:42
阅读次数:
264
一 类型检查
1、 类型检查操作符
类型检查用来检查或转换一个实例的类型到另外的类型的一种方式。
在Swift中,类型检查使用is和as操作符来实现。
is操作符用来检查一个实例是否是某种特定类型,如果是返回true,否则返回false。
as操作符用来把某个实例转型为另外的类型,由于实例的转型可能失败,因此Swift为as操作符提供了两种...
分类:
移动开发 时间:
2014-06-22 20:33:47
阅读次数:
257
在swift中,继承是区分类与其他对象的基本特征
继承后的子类可以重写父类的方法,包括类方法和实例方法,属性和附属脚本(subscript)
在继承过程中,构造器方法init()是不被继承的,需要显示标明
class Tandem: Bicycle {
init() {
super.init()
maxPassengers = 2
} }
子类只可以修改从父类继承来的变量属性,而...
分类:
其他好文 时间:
2014-06-22 19:21:28
阅读次数:
159
协议(Protocols)
协议仅是用定义某些任务或者是功能必须的方法和属性。类似于java里的interface的作用。但协议并不会实现具体的功能。
我猜这个名字源于OO中提到的“契约”,但我并不觉得这名字很好,反而是interface这名字更容被接受,因为我觉得协议这个名字很容易和网络编程的时候的网络协议搞混,网络协议也通常简称为协议。
语法:
protocol...
分类:
其他好文 时间:
2014-06-22 19:20:37
阅读次数:
195
扩展
扩展可以让我们给一个已有的类、结构体、枚举等类型添加新功能,包括属性和方法,甚至是构造器,下标,支持协议等等。。。
甚至是我们拿不到源代码的类、结构体、枚举,我们依然可以给它加扩展。。。
看到这里的时候,我还有点小激动呢。。。可是淡定下来之后,觉得这TMD就是个大大的飞线,飞线,飞线。。。这让我们的代码难以理解全面(总要担心是不是哪里还有扩展,我没读到的。。谁会不会在哪...
分类:
其他好文 时间:
2014-06-22 18:45:04
阅读次数:
154
// 声明一个常量
let maxNumberOfStudents: Int = 47
// 声明一个变量,如果没有在声明的时候初始化,需要显示的标注其类型
var currentNumberOfStudents = 23
// 使用前必须初始化
currentNumberOfStudents += 1
// 浮点数据自动推断为Double类型,如果需要指定了Float类型,需要显示...
分类:
其他好文 时间:
2014-06-21 22:54:45
阅读次数:
231
可选链(Optional Chaining)
我们都知道“可选型”是什么,那么可选链又是什么,举个例子解释一下:
struct MyName{
var name
}
struct MyInfo {
var myName:MyName? = MyName()
}
class MyClass {
var structInstanc...
分类:
其他好文 时间:
2014-06-21 19:58:59
阅读次数:
307
Protocol(协议)用于统一方法和属性的名称,而不实现任何功能。协议能够被类,枚举,结构体实现,满足协议要求的类,枚举,结构体被称为协议的遵循者。
遵循者需要提供协议指定的成员,如属性,方法,操作符,下标等。
一、协议的基本语法
咱们还是先上代码吧
protocol Human {
var name:String{ get set }
var isMan:...
分类:
其他好文 时间:
2014-06-21 18:39:12
阅读次数:
199