Lua學習筆記--物件導向(三)
Lua透過Self指標實現物件導向.
物件其實是一個table,table不僅包括資料,還包括函式
account={balance=10}
function account.withdraw(self,v)
self.balance=self.balance-v
end
local a=account
account=nil
a.withdraw(a,2)
print(a.balance)
self是每個函式的第一個引數,這樣寫起來很麻煩.
如果透過冒號(:)呼叫,則可以自動省略第一個引數的self
a:withdraw(2)
print(a.balance)
或者在定義的時候,直接構造物件.
account={
balance=10,
withdraw= function(self,v)
self.balance=self.balance-v
end
}
function account:deposit(v)
self.balance=self.balance+v
end
account:withdraw(2)
print(account.balance)
account:deposit(2)
print(account.balance)
物件其實是一個table,table不僅包括資料,還包括函式
account={balance=10}
function account.withdraw(self,v)
self.balance=self.balance-v
end
local a=account
account=nil
a.withdraw(a,2)
print(a.balance)
self是每個函式的第一個引數,這樣寫起來很麻煩.
如果透過冒號(:)呼叫,則可以自動省略第一個引數的self
a:withdraw(2)
print(a.balance)
或者在定義的時候,直接構造物件.
account={
balance=10,
withdraw= function(self,v)
self.balance=self.balance-v
end
}
function account:deposit(v)
self.balance=self.balance+v
end
account:withdraw(2)
print(account.balance)
account:deposit(2)
print(account.balance)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29254281/viewspace-1850567/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Lua學習(二)物件導向物件
- Flutter學習筆記(8)--Dart物件導向Flutter筆記Dart物件
- js高階 物件導向 學習筆記JS物件筆記
- Ext學習筆記2-物件導向筆記物件
- Python 3 學習筆記之——物件導向Python筆記物件
- 【python 物件導向】 python物件學習筆記《1》Python物件筆記
- Python學習筆記|Python之物件導向Python筆記物件
- 物件導向筆記物件筆記
- Lua學習筆記筆記
- Lua 中實現物件導向物件
- Python 學習筆記之類「物件導向,超類,抽象」Python筆記物件抽象
- 程式設計基礎·Java學習筆記·物件導向(下)程式設計Java筆記物件
- Lua 學習筆記(上)筆記
- Lua學習筆記(一)筆記
- 學習Rust 物件導向Rust物件
- Go 筆記之物件導向Go筆記物件
- Python 物件導向筆記Python物件筆記
- LUA基礎: TABLE, ARRAY, NAMESPACE, LUA的物件導向namespace物件
- C#學習筆記(六)——物件導向程式設計簡介C#筆記物件程式設計
- Python3:物件導向程式設計學習筆記(2)Python物件程式設計筆記
- 學習筆記:物件導向程式設計技術(C++版)筆記物件程式設計C++
- JavaSE第三章筆記(物件導向1)Java筆記物件
- Lua5.3學習筆記筆記
- lua課程學習筆記筆記
- PHP學習4——物件導向PHP物件
- JavaScript學習2:物件導向JavaScript物件
- (Java筆記)物件導向基礎Java筆記物件
- javascript 物件導向學習(三)——this,bind、apply 和 callJavaScript物件APP
- PHP 物件導向 (九)物件導向三大特徵PHP物件特徵
- Scala學習 2 Scala物件導向物件
- C#學習筆記(一)--- 物件導向的思想和類的定義、物件的建立C#筆記物件
- 《JavaScript 物件導向精要》 讀書筆記JavaScript物件筆記
- Java課堂筆記(二):物件導向Java筆記物件
- [筆記]物件導向的程式設計筆記物件程式設計
- PHP物件導向(三)PHP物件
- 菜鳥學習筆記:Java基礎篇1(基礎語法、物件導向)筆記Java物件
- Python學習筆記 9.0 模組 與 包 與 物件導向版學員管理系統Python筆記物件
- 熱更新語言--lua學習筆記筆記