一 类型检查
1、 类型检查操作符
类型检查用来检查或转换一个实例的类型到另外的类型的一种方式。
在Swift中,类型检查使用is和as操作符来实现。
is操作符用来检查一个实例是否是某种特定类型,如果是返回true,否则返回false。
as操作符用来把某个实例转型为另外的类型,由于实例的转型可能失败,因此Swift为as操作符提供了两种...
分类:
移动开发 时间:
2014-06-22 20:33:47
阅读次数:
257
Swift语言入门之旅
学习一门新的计算机语言,传统来说都是从编写一个在屏幕上打印“Hello world”的程序开始的。那在
Swift,我们使用一句话来实现它:
println("Hello, world")
如果你编写过C或者Objective-C语言,Swift中的这个语法看起来便很熟悉,这句话却是一个完整的程序
。你无须为了得到...
分类:
其他好文 时间:
2014-06-22 20:30:36
阅读次数:
262
选项链是使用选项来查询和调用其属性、方法或下标的一个过程,如果选项包含一个值,则属性、方法、下标的查询和调用成功,否则,调用返回nil。
选项链能用在任何类型的选项来检查对其一个属性、方法、下标的查询和调用是否成功。
选项链可以作为强制展开的替代方式使用,但选项链的使用更加安全,不会触发一个运行时错误。
在调用一个选...
分类:
移动开发 时间:
2014-06-22 20:19:15
阅读次数:
222
在swift中,继承是区分类与其他对象的基本特征
继承后的子类可以重写父类的方法,包括类方法和实例方法,属性和附属脚本(subscript)
在继承过程中,构造器方法init()是不被继承的,需要显示标明
class Tandem: Bicycle {
init() {
super.init()
maxPassengers = 2
} }
子类只可以修改从父类继承来的变量属性,而...
分类:
其他好文 时间:
2014-06-22 19:21:28
阅读次数:
159
Swift实现的单例安全吗?这里你将看到百万线程如何攻破不安全的单例实现,理论指导加真实测试,让你亲眼看到大量线程抢占资源时的小概率事件发生...
分类:
编程语言 时间:
2014-06-22 18:58:41
阅读次数:
249
扩展
扩展可以让我们给一个已有的类、结构体、枚举等类型添加新功能,包括属性和方法,甚至是构造器,下标,支持协议等等。。。
甚至是我们拿不到源代码的类、结构体、枚举,我们依然可以给它加扩展。。。
看到这里的时候,我还有点小激动呢。。。可是淡定下来之后,觉得这TMD就是个大大的飞线,飞线,飞线。。。这让我们的代码难以理解全面(总要担心是不是哪里还有扩展,我没读到的。。谁会不会在哪...
分类:
其他好文 时间:
2014-06-22 18:45:04
阅读次数:
154
扩展就是向一个已有的类、结构体或枚举类型添加新功能(functionality)。扩展和 Objective-C 中的分类(categories)类似。(不过与Objective-C不同的是,Swift 的扩展没有名字。)
Swift 中的扩展可以:
1.添加计算型属性和计算静态属性
2.定义实例方法和类型方法
3.提供新的构造器
4.定义下标
5.定义和使用新的嵌套类型
6.使一个...
分类:
其他好文 时间:
2014-06-22 14:50:00
阅读次数:
211
Swift中的变量var常量和let常量
首先介绍一下Swift中的 var 和 let
(1)var 是 variable的缩写形式,是变量的意思 ,是可改变的,并不是数据类型
例如:
注意每个语句后面不用加分号
var i:double=10.0 //将i指为double类型的,变量名后面加个冒号
var i = 10 // 如果不指定类型的话,系统会自动根据你的赋值来判断类型...
分类:
其他好文 时间:
2014-06-22 14:44:50
阅读次数:
176
实例的初始化是准备一个类、结构或枚举的实例以便使用的过程。初始化包括设置该实例的每一个存储 属性为一个初始值,以及执行任何其它新的实例能够使用之前需要的设置或初始化。
一个类、结构或枚举能定义一个初始化方法来设置它的特性,用来确保它的实例的所有属性都有有效的初始值。
通过调用类、结构或枚举提供的初始化方法来执行实例的初始化过程。
类的实例也能实...
分类:
移动开发 时间:
2014-06-21 22:04:27
阅读次数:
348
可选链(Optional Chaining)
我们都知道“可选型”是什么,那么可选链又是什么,举个例子解释一下:
struct MyName{
var name
}
struct MyInfo {
var myName:MyName? = MyName()
}
class MyClass {
var structInstanc...
分类:
其他好文 时间:
2014-06-21 19:58:59
阅读次数:
307