// person.swift
import
foundation //
類是一類物體的共有性抽象
//物件是某一類的乙個具體
class
person:
nsobject
//該方法是為了解決字典裡面的一些
key值,在該模型裡面沒有導致的系統崩潰
override
func
setvalue(value:
anyobject
?, forundefinedkey key:
string)
} // animal.swift
import
foundation //
過載建構函式
class
animal:
nsobject
//如果過載了構造方法同事沒有寫上系統預設的構造方法,外界無法訪問到該類的構造方法
override
init
() }
// main.swift
import
foundation //
在swift
裡面引用其他我們自定義的類不用匯入標頭檔案,可以直接使用 //
面向過程
:注意功能實現的乙個過程 //
物件導向
:注意實現功能所要參與的物件 //
建立person
物件//
類名()
代表該類呼叫系統預設的例項化方法
letperson0 =
person()
//訪問物件的屬性採用點語法
println
(person0
.name)
println
(person0
.age)
//屬性值在該類中定義為
var時,可修改其屬性值
person0
.name="
胡小樂"
person0
.age=70
println
(person0
.name)
println
(person0
.age)
//給可選型別的屬性進行賦值操作
person0
.grade="
五年級"
person0
.count=5
println
(person0
.grade!)
println
(person0
.count!)
//給有過載建構函式類的屬性進行賦值
letanimal0 =
animal
(age:
2, type:
"dog")
println
(animal0
.age)
println
(animal0
.type!)
letstudent0 =
students
(stuno:
1, stuname:
"胡小東
", stuage:20)
letclass0 =
classes
(cno:
"1001"
, cname: "軟體
141"
, peoplecount:40)
println("
\(student0
.stuno!),
\(student0
.stuname!),
\(student0
.stuage!)"
) println("
\(class0
.cno!),
\(class0
.cname!),
\(class0
.peoplecount!)"
) //鍵值編碼:
kvc(key-value-coding)
//是一種通過字串間接訪問物件屬性的一種方法
letanimal1 =
animal()
animal1
.setvalue
("horse"
, forkey:
"type"
)//key
要跟你要設定的屬性的名字一樣
//在進行
kvc賦值的時候,類的屬性如果是基本資料型別的話不能是可選型別,必須有乙個初始值
animal1
.setvalue(12
, forkey:
"age")
println
(animal1
.type!)
println
(animal1
.age)
letanimal2 =
animal()
letdict = [
"type"
:"monkey"
,"age":5
] "type"], forkey: "type")
"age"], forkey: "age")
//setvaluesforkeyswithdictionary:(keyedvalues:[nsobject:anyobject]):
會將字典中的
key跟物件屬性的名字進行對比,如果一樣,將
key對應的
value
設定到物件的屬性上,會在底層重複呼叫
setvalue(value, forkey:key)
animal2
.setvaluesforkeyswithdictionary
(dict)
println
(animal2
.type!)
println
(animal2
.age)
swift中的類和結構
類的宣告 類是乙個引用型別,也就是說其實例分配到堆中 屬性,方法,建構函式,析構函式,索引器 subscript stored properties 儲存屬性 computed properties 計算屬性 class person didset old var p person p.name 三...
IOS中的Swift基礎02 switch,迴圈
main.swift swiftlesson02 created by lanou on 16 10 21.年 import foundation switch c語音的 switch switch 變數 case value2 default swift 裡面的switch 1 switch 後面...
C 中對類和物件基礎理解
c 中對類和物件基礎理解 c 不是純物件導向的程式語言,而是基於物件導向的語言,因為c 中包含c語言的部分,而c語言是面向過程的。物件導向的三大特性 封裝 繼承 多型。封裝 將方法和資料封裝在類裡面,可以根據訪問限定符的使用保證資料的安全性,隱藏了方法的實現細節,也方便使用。繼承 對已有類增加屬性和...