首先我們來(lái)創(chuàng)建一個(gè)類吧,然后在里面聲明屬性與方法
這時(shí)候我們來(lái)調(diào)用對(duì)應(yīng)的屬性與方法
//聲明并初始化 var user = BaseUser(username: "kutian", password: "123456") println(user.toString()) user.name = "kutian" println("\(user.name) \(user.password)")接下來(lái),我們繼續(xù)創(chuàng)建一個(gè)類來(lái)繼承之前的類
繼承,跟大家想的沒(méi)聲明區(qū)別
class AdminUser: BaseUser { var managerModel:String = "爐石傳說(shuō)" override func toString() -> String { return "爐石傳說(shuō)" } } var adminUser = AdminUser(username: "swh", password: "123") println(adminUser.toString())好啦,接下來(lái)我們創(chuàng)建枚舉
我們可以直接賦值,也可以弄一個(gè)方法,讓它返回新值
enum Suit:String { case Spades = "黑桃", Hearts = "紅桃", Diamonds = "方塊", Clubs = "梅花" func toString()-> String { switch self { case .Spades: return "黑桃" case .Hearts: return "紅桃" case .Diamonds: return "方塊" case .Clubs: return "梅花" default : return "鬼牌" } } }然后調(diào)用枚舉里面涉及到的一些方法
這里面有新的rawValue還有!是把任意nil轉(zhuǎn)為正常的哦
var suit = Suit.Hearts println(suit.rawValue) let tempSuit = Suit(rawValue: "梅花") println(tempSuit!.rawValue)我們也可以新建一個(gè)類,并在里面聲明某個(gè)屬性是枚舉類型
好啦,我們來(lái)創(chuàng)建一個(gè)結(jié)構(gòu)體吧
struct Hero { static var isGirl:Bool = false var rank:Rank var name:CompassPointType func toString()-> String { return "\(name):\(rank.rawValue)" } }其實(shí)它跟類還是差不多的,只是它傳值的時(shí)候并不涉及傳地址哦
然后我們來(lái)寫(xiě)個(gè)協(xié)議吧
protocol SimpleProtocol { var value:String {get} func toString()-> String mutating func update() } protocol BaseProtocol { func equal()-> Bool } class SuperClass { var name:String = "swh" }接下來(lái)創(chuàng)建一個(gè)類來(lái)遵循并實(shí)現(xiàn)這個(gè)協(xié)議
class SubClss: SuperClass, SimpleProtocol, BaseProtocol { var value:String = "defalut" func toString()-> String { return value } func update() { value = "new value" } func equal() -> Bool { return false } }再接下來(lái),我們?cè)賹?xiě)一個(gè)擴(kuò)展好了
class Rect { var width:Int = 50 var height:Int = 100 } extension Rect:BaseProtocol { func area()-> Int { return width * height } func equal() -> Bool { return height == width } } extension Int { func toString()-> String { return "你猜" } }類和協(xié)議就比較好理解了,與O-C沒(méi)有什么區(qū)別的哦
OK,就這么多咯
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
文章名稱:swift篇第三期:類、枚舉、結(jié)構(gòu)體-創(chuàng)新互聯(lián)
URL鏈接:http://aaarwkj.com/article46/dopheg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、面包屑導(dǎo)航、定制網(wǎng)站、微信小程序、小程序開(kāi)發(fā)、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容