swift物件導向特性——類和結構體
類和結構體的定義
類的語法格式為:
class 類名
{
//在這裡定義類的內容
}
結構體的語法格式為:
struct 結構體名稱
{
//在這裡定義結構體的內容
}
Swift中類和結構體的名稱都以大寫字母開頭。類的方法和屬性使用小寫字母開頭
eg_類:
class Student{
var number:Int = 0
var name:String = ""
var height:Int = 0
var weight:Int = 0
fun demo(){
print("Student")
}
}
let stu Student()
stu.demo()
eg_結構體:
struct Person
{
var name:String = "張三"
var age:Int = 20
}
let per = Person()
print("名字:\(per.name)")
print("名字:\(per.age)")
定義結構體時,所包含的屬性都有預設值,此時構造結構體例項
var per Person()
如果結構體中的屬性沒有預設值,那麼使用結構體的建構函式來例項化結構體。
var stu = Student(name,"小明",age:10)
在swift結構體中,還可以定義方法。
struct Teacher
{
var name : String
var age: Int
var knowledge:String
fun teachStudent()->String
{
return knowledge
}
}
Swift提供了兩個恆等式運算子(===和!==)用來監測兩個常量或者變數是否引用同一個類例項。
在Swift中,只有類型別是引用型別,其餘的一切都是值型別。所以結構體的例項,以及例項中所包含的任何值型別屬性,在程式碼中傳遞的時候都會被複制。
結構體是值型別,當一個值型別例項作為常量而存在,它的所有屬性也將作為常量而存在。而這個特性對類並不適用,因為累是引用型別。如果將引用型別的例項賦值給常量,依然能夠改變例項的變數屬性。
相關文章
- Swift-類和結構體Swift結構體
- golang 物件導向特性Golang物件
- 全面物件導向體系結構設計 (轉)物件
- Swift 類與結構體Swift結構體
- Swift,結構體與類Swift結構體
- 物件導向和構造器物件
- C#物件導向三大特性總結C#物件
- 程式設計體系結構(06):Java物件導向程式設計Java物件
- 物件導向有哪些特性物件
- 物件導向-抽象類物件抽象
- Perl物件導向--類物件
- Java物件導向——類與物件Java物件
- 物件導向的基本理論1:類和物件物件
- “程序導向”和“物件導向”物件
- 物件導向-設計模式-結構型物件設計模式
- Java物件導向三大特性Java物件
- 08 ### 物件導向三大特性物件
- python-程式導向、物件導向、類Python物件
- 物件導向 -- 三大特性之繼承 補充 抽象類 介面類物件繼承抽象
- C++物件導向程式設計 類和物件提高篇 建構函式C++物件程式設計函式
- 物件導向類成員物件
- JAVA物件導向--抽象類Java物件抽象
- 困惑:程式導向和麵向物件的結合?物件
- [物件導向總結]物件
- ES5物件導向基礎結構物件
- Swift4類和結構(二)Swift
- 物件導向 -- 三大特性之多型物件多型
- Python物件導向三大特性Python物件
- C++物件導向三大特性C++物件
- 物件導向中類和物件的定義是什麼?物件
- python物件導向思想(類與物件)Python物件
- PHP 物件導向 (十一)反射類PHP物件反射
- 物件導向 -- 類的組合物件
- C++ 類(物件導向初探)C++物件
- 物件導向之內部類物件
- JavaScript中的物件導向----類JavaScript物件
- 物件導向——類設計(一)物件
- 物件導向-程式碼塊的概述和分類物件