swift學習之 函式 構建函式 kvc構建函式

2021-08-03 14:55:13 字數 1524 閱讀 2805

一、函式格式及帶參函式

/// 函式定義格式, 函式名(形參列表)-返回值

func sum(x: int,y: int) -> int

//外部引數,在形參前加乙個名字,外部引數不會影響函式,外部引數讓函式看起來更直觀

//外部引數使用「-」,呼叫函式的時候會忽略形參名字

func sum1(number1 x: int,number2 y: int) -> int

//函式預設值

//通過給引數設定預設值,在呼叫函式時,可以任意指定引數值,沒有就使用預設值

func sum3(x: int = 1, y: int = 2) -> int

二、重寫和過載

1.以繼承nsobject的person為例!

import uikit

class person: nsobject

//「過載」,和父類函式名相同,引數和個數不同

init(name:string)

}

2.過載乙個可以為nil的類

import uikit

class person: nsobject

super.init()

self.name = name

}///析構函式\等價於oc中dealloc

///這方法是在物件被銷毀時呼叫;沒有func -> 不讓呼叫

///沒有()不讓重寫

deinit

}

此init方法當傳入的age大於100的時候,類就為nil了,在使用person這個類的時候,需要注意解包了!

三、遍歷建構函式convenience、extension相當於oc中的類目

import uikit

/// convenience 來修飾的構造方法 就是 便利建構函式

/// 便利建構函式不能被 重寫 或者用 super

/// 便利構造中科院呼叫self.init()

//extension 類似於 oc 中的category

extension uilabel

}

四、kvc構建函式、私有private

在mvc專案中我們用得最多的方式就是用kvc的方式構建乙個model了,當然有很多三方庫構建模型給我們帶來了不少快捷;

在swift中構建乙個model同樣也是用到kvc的方式,但是值得注意的是,kvc構建model的方法本身是oc方法,在swift運用時需要注意!

import uikit

class person: nsobject

/// 為避免使用kvc給屬性賦值時,字典key多於屬性發生的崩潰問題,需重寫這個方法;沒有呼叫super,將父類**完全覆蓋

override func setvalue(_ value: any?, forundefinedkey key: string)

}

swift學習之函式

1.定義函式func sayhello personname string string sayhello iyaqi hello,iyaqi 2.引數和返回值 2.1 無引數 func sayhelloagain string sayhelloagain hello,iyaqi 2.2 無返回值 ...

swift學習之函式

當然在程式開發的時候最重要的是方法了 在swift中如何建立 使用函式 無引數函式的形式 func 方法名字 返回值 當返回值為空的時候 返回值用 void 當返回值為空的時候 void 可以省略 函式方法的建立 func sayhellow void 函式方法的呼叫 sayhellow 有引數函式...

Swift學習筆記之函式

func testfunc 關於 swift 中的函式 1 函式定義,單個引數,返回值 func sayhi name string string 2 傳入多個引數,返回值 func sayhi2 name string age int string 3 無引數,無返回值 func sayhi3 4...