Swift基础--方法
Swift基礎(chǔ)--方法
swift中方法分為實(shí)例方法和靜態(tài)方法,方法時(shí)于默寫特定類型相關(guān)聯(lián)的函數(shù).類,結(jié)構(gòu)體,枚舉都可以定義實(shí)例方法,也可以定義靜態(tài)方法.
一,實(shí)例方法
實(shí)例方法: 給特定類型實(shí)例封裝的具體功能函數(shù). 實(shí)例方法使用與類,結(jié)構(gòu)體,枚舉
1.1,使用類中定義的實(shí)例方法
首先在勒種定義方法,然后通過創(chuàng)建類的實(shí)例,是哪個"實(shí)例.方法名"即可調(diào)用,如:
class Player {func run() {print(" run.........")} }let player = Player() player.run() out: run......... 復(fù)制代碼1.2,使用結(jié)構(gòu)體中定義的實(shí)例方法
首先在結(jié)構(gòu)體中定義方法,要在定義的方法前添加關(guān)鍵字"mutating"來聲明這個方法是"變異方法",如果在此方法中還要釣友結(jié)構(gòu)體中的屬性,則必須在調(diào)用屬性前添加"self."來證明屬性來源于此結(jié)構(gòu)體.然后通過創(chuàng)建類的實(shí)例,使用"實(shí)例.方法名"進(jìn)行調(diào)用,如:
struct Point {var x:CGFloat = 0, y: CGFloat = 0mutating func safeZone(x: CGFloat, y: CGFloat) {self.x = xself.y = yprint("x:\(x), y:\(y)")} }var point = Point() point.safeZone(x: 100, y: 100) out: x:100.0, y:100.0 復(fù)制代碼1.3 使用枚舉中定義的實(shí)例方法
枚舉中定義的實(shí)例方法和結(jié)構(gòu)體一樣,要在定義的方法前添加"mutating"關(guān)鍵字來聲明這個方法時(shí)"變異方法",如果在此方法中還要調(diào)用枚舉中的匹配枚舉值,則必須使用"self"來證明匹配枚舉值來源于此枚舉,然后通過創(chuàng)建枚舉的實(shí)例來調(diào)用方法,如:
enum Duration {case east,south,west,northmutating func getDuration() {print("duration:\(self)")switch self {case .east:self = .westcase .south:self = .northcase .west:self = .eastcase .north:self = .south}print("對立的方向:\(self)")} }var duration = Duration.east duration.getDuration() out: 對立的方向:west 復(fù)制代碼二,靜態(tài)方法
靜態(tài)方法: 不用創(chuàng)建特定類型的實(shí)例就能調(diào)用的具體功能函數(shù) 靜態(tài)方法適用于類,結(jié)構(gòu)體
2.1 使用類中定義的靜態(tài)方法
首先在勒種定義方法,通過在方法名前添加關(guān)鍵字"class" 或"static",然后使用"類名.方法名" 即可調(diào)用,如果方法中包含調(diào)用屬性,此屬性必須是靜態(tài)屬性(靜態(tài)屬性也是在普通屬性前面添加關(guān)鍵字 "static"),如:
class People {static var name: String = "kobe"static func getName() {print("name:\(name)")} }People.getName() out: name:kobe 復(fù)制代碼2.2 使用街骨頭中定義的靜態(tài)方法
通過在方法名前添加關(guān)鍵字"static",然后使用"結(jié)構(gòu)體.方法名"即可調(diào)用,如果方法中包含調(diào)用屬性,那么此屬性必須是靜態(tài)屬性(靜態(tài)屬性也是在普通屬性前面添加關(guān)鍵字 "static"),如:
struct Z {static var z: CGFloat = 0static func getZ() {print("z:\(z)")} } Z.getZ() out: z:0 ## hi 各位大佬,如果您喜歡我的文章,可以在以下平臺關(guān)注我 [個人網(wǎng)站](https://shunyangsky.com)微博:[順揚(yáng)sky](https://weibo.com/2445151355/profile?topnav=1&wvr=6&is_all=1) 簡書:[順揚(yáng)sky](https://www.jianshu.com/u/163fccb10ca5)掘金:[順揚(yáng)sky](https://juejin.im/user/59a67546518825241e223768)[CSDN博客](https://me.csdn.net/u011137073)復(fù)制代碼總結(jié)
以上是生活随笔為你收集整理的Swift基础--方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Influxdb修改数据保留策略
- 下一篇: IOT物联网观察之物联网是器,大数据是魂