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結構體
- C#物件導向三大特性總結C#物件
- 物件導向和構造器物件
- 物件導向有哪些特性物件
- 程式設計體系結構(06):Java物件導向程式設計Java物件
- python-程式導向、物件導向、類Python物件
- 物件導向的基本理論1:類和物件物件
- Java物件導向——類與物件Java物件
- Python物件導向三大特性Python物件
- 08 ### 物件導向三大特性物件
- Java物件導向三大特性Java物件
- “程序導向”和“物件導向”物件
- 物件導向-設計模式-結構型物件設計模式
- 物件導向 -- 三大特性之繼承 補充 抽象類 介面類物件繼承抽象
- JAVA物件導向--抽象類Java物件抽象
- python物件導向思想(類與物件)Python物件
- 物件導向 -- 三大特性之多型物件多型
- 2.1.1 Python物件導向三大特性Python物件
- C++物件導向三大特性C++物件
- ES5物件導向基礎結構物件
- 物件導向中類和物件的定義是什麼?物件
- 『無為則無心』Python物件導向 — 46、類和物件Python物件
- 物件導向 -- 類的組合物件
- C++ 類(物件導向初探)C++物件
- PHP 物件導向 (十一)反射類PHP物件反射
- 物件導向之內部類物件
- js 物件導向總結JS物件
- 物件導向概念總結物件
- 物件導向 -- 三大特性之封裝物件封裝
- 物件導向 -- 三大特性之繼承物件繼承
- 物件導向-物件導向思想物件
- 物件導向 -- 類的載入順序 類和物件的名稱空間物件
- Go語言結構體(struct)物件導向程式設計基礎篇Go結構體Struct物件程式設計
- Java語言之物件導向—類與物件(上)Java物件
- 物件導向軟體工程物件軟體工程
- 20200820 - 程式導向和麵向物件物件
- 物件導向和麵向過程物件