Swift 系統學習 23 類的宣告和初始化

2021-07-27 16:17:32 字數 1809 閱讀 6079

//: playground - noun: a place where people can play

import uikit

/* * 本節主要內容:

* 1.類的宣告和初始化

*//*

* oc語言中, 宣告類

* .h檔案類的介面 @inte***ce

@class classname: superclassname@end

* .m檔案類的實現 @implementation

*//*

* swift語言中, 類只有乙個檔案(屬性/方法宣告/方法實現)

* 乙個***.swift檔案內可以包含很多態別(多個類/多個結構體/多個列舉)

*//*

* 結構體和類的區別:

* 1.結構體預設自動提供構造方法, 但是類沒有

*/// 宣告描述人的類(特徵和行為 --> 屬性和方法)

class person

// 可失敗的構造方法: 引數是fullname

// 格式: "taylor swift"

init?(fullname: string)

let spaceindex = fullname.index(spacerange.lowerbound, offsetby: 0)

self.firstname = fullname.substring(to: spaceindex)

self.lastname = fullname.substring(from: fullname.index(spaceindex, offsetby: 1))

}// 自定義方法

func fullname() -> string

// 修改職業(屬性)

func changecareer(newcareer: string)

}// 例項化

var personone = person(firstname: "steve", lastname: "jobs", career: "ceo")

personone.career

personone.changecareer(newcareer: "cto")

personone.career

// 驗證swift語言中, 類是引用型別

// 物件指向同一片記憶體空間

var persontwo = personone

persontwo.career

persontwo.lastname

personone.changecareer(newcareer: "ceo")

persontwo.career

// ==只能判定值型別是否相等; ===判定引用型別是否相等(判定兩個引用型別的物件是否指向同一片記憶體空間)

personone === persontwo

var personthree = person(firstname: "steve", lastname: "jobs", career: "ceo")

personone === personthree

/* * 課堂練習:

* 1.宣告類(檢視), 新增兩個屬性(登入名字和年齡; 可選型),自定義方法(建立person結構體物件)

* 2.宣告結構體person(模型)(登入名字和年齡)

* 3.要求: 使用error handling錯誤處理機制, 處理下面幾種情況

1). 名字和年齡輸入為空

2). 輸入的年齡不符合格式(只能是整型型別)

* 4.驗證error handling錯誤機制的實現

*/

Swift 系統學習 06 迴圈語句

playground noun a place where people can play import uikit 本節主要內容 1.迴圈語句 for index in 0.10 需求 計算2的10次方 var result 1 var basevalue 2 下劃線 是忽略迴圈次數 忽略區間運算...

swift4 1 系統學習一

swift學習筆記1 簡介swift出現的目的 為了簡化macos和ios開發 特點 1.開源 2.跨平台 3.物件導向的程式語言 4.程式設計正規化豐富 面向過程,物件導向,函式式程式設計 5.安全性 swift學習筆記2 基本型別體系 1.列舉 enum 2.結構體 struct 3.類 cla...

swift4 1 系統學習九 Optional

main.swift swift09 created by ios on 2018 9 29.import foundation swift學習筆記9 optional 可選型別 可選型別是swift特色之一,也是很多初學者不適應的原因之一。optional體現了swift對型別的安全性考慮。特點 ...