Swift類

Swift 4中的類是靈活構造的構建塊。 與常量,變數和函數類似,用戶可以定義類的屬性和方法。 Swift 4提供了一些功能,在聲明類時,用戶無需創建介面或實現檔。 Swift 4允許將類創建為單個檔,並且當初始化類後,默認情況下將創建外部介面。

使用類的好處 -

  • 繼承並獲取另一個類的屬性
  • 類型轉換使用戶可以在運行時檢查類類型
  • 去初始化器負責釋放記憶體資源
  • 引用計數允許類實例具有多個引用

類和結構體的共同特徵 -

  • 定義屬性以存儲值
  • 定義下標用於提供對值的訪問
  • 初始化方法以改進功能
  • 初始狀態由初始化器定義
  • 功能擴展超出默認值
  • 確認協議功能標準

語法

Class classname {
   Definition 1
   Definition 2
   ---
   Definition N
}

類定義

class student {
   var studname: String
   var mark: Int
   var mark2: Int
}

創建實例的語法 -

let studrecord = student()

示例代碼

class MarksStruct {
   var mark: Int
   init(mark: Int) {
      self.mark = mark
   }
}

class studentMarks {
   var mark = 300
}

let marks = studentMarks()
print("Mark is \(marks.mark)")

當使用playground 運行上述程式時,得到以下結果 -

Mark is 300

訪問類屬性作為引用類型

可以通過.操作符來訪問類屬性。 在實例名稱之後由.連接屬性名稱。參考以下示例代碼 -

class MarksStruct {
   var mark: Int
   init(mark: Int) {
      self.mark = mark
   }
}

class studentMarks {
   var mark1 = 300
   var mark2 = 400
   var mark3 = 900
}

let marks = studentMarks()
print("Mark1 is \(marks.mark1)")
print("Mark2 is \(marks.mark2)")
print("Mark3 is \(marks.mark3)")

當使用playground 運行上述程式時,得到以下結果 -

Mark1 is 300
Mark2 is 400
Mark3 is 900

類標識運算符

Swift 4中的類指的是指向單個實例的多個常量和變數。 要瞭解指向類實例的常量和變數,請使用識別字運算符。 類實例始終通過引用傳遞。 在類中,NSStringNSArrayNSDictionary實例始終作為對現有實例的引用,而不是作為副本進行分配和傳遞。

相同運算符 不同運算符
使用的運算符是(===) 使用的運算符是(!==)
當兩個常量或變數指向同一個實例時返回true 當兩個常量或變數指向不同的實例時返回true

示例代碼 -

class SampleClass: Equatable {
   let myProperty: String
   init(s: String) {
      myProperty = s
   }
}

func ==(lhs: SampleClass, rhs: SampleClass) -> Bool {
   return lhs.myProperty == rhs.myProperty
}

let spClass1 = SampleClass(s: "Hello")
let spClass2 = SampleClass(s: "Hello")

spClass1 === spClass2 // false
print("\(spClass1)")

spClass1 !== spClass2 // true
print("\(spClass2)")

當使用playground 運行上述程式時,得到以下結果 -

main.SampleClass
main.SampleClass

上一篇: Swift結構體 下一篇: Swift屬性