1、构造函数重载
import Foundation
class Hello{
var _name:String="Swift"
init(name:String){
_name=name
}
init(){ //构造函数重载
}
func sayHi(){
println("Hello, \(_name).")
}
}
var hi=Hello()
println(hi.sayHi())
var h=Hello(name: "Zesicus")
println(h.sayHi())
2、类方法
import Foundation
class Hello{
class func sayHi(){ //类方法
println("Hi, Swift.")
}
}
Hello.sayHi() //输出:Hi, Swift
3、类继承
import Foundation
class Hi{
func sayHi(){
println("Hi, Zesix.")
}
}
class Hello:Hi{ //继承类
var _name:String
init(name:String){
_name=name
}
override func sayHi(){ //重写函数
println("Hello, \(_name).")
}
}
var hi=Hi()
println(hi.sayHi())
var h=Hello(name: "Zesicus")
println(h.sayHi())
4、类功能的动态扩展
import Foundation
class Hello{
class func sayHi(){
println("Hi, Swift.")
}
}
extension Hello{ //动态扩展(将sayyes()添加到类Hello中)
func sayyes(){
println("sayyes")
}
}
Hello.sayHi()
var h=Hello()
h.sayyes()
5、类接口(协议)
import Foundation
protocol Human{ //接口实现
func getName()->String
}
class Man:Human{
func getName() -> String {
return "Zesix"
}
}
var i=Man()
println("I am \(i.getName())")
6、命名空间(定义多个class类实现)
*******多文件存放形式*********
main.swift
var h=com.zesix.Hello()
var hh=com.zesix.Hi()
zesix.swift
import Foundation
class com{
class zesix {
}
}
hello.swift
import Foundation
extension com.zesix{
class Hello{
init(){
println("Hello, Zesix.")
}
}
}
hi.swift
import Foundation
extension com.zesix{
class Hi {
init(){
println("Hi, Zesix.")
}
}
}