Delphi系列談之:Delphi中的靜態屬性及靜態方法的實現 (轉)
在學習時常有些心得,在此寫出來,供大家參考,如有錯誤或不妥之處還望指教.
使用過c++的人都知道在c++的類中有靜態屬性及靜態方法,為設計帶來很多方便.那麼在Delphi中靜態屬性及靜態方法是怎麼實現的呢?請看下面的例項:
unit Unit2;
interface
type
TMyClass = Class
public
{靜態過程:設定靜態屬性的值}
class procedure SetStaticMemberValue(AString: string);
{靜態:讀取靜態屬性的值}
class function GetStaticMemberValue: string;
end;
implementation
{在此宣告靜態屬性,這一點與c++有很大的不同}
var
AStaticMember: string;
class function TMyClass.GetStaticMemberValue: string;
begin
Result := AStaticMember;
end;
class procedure TMyClass.SetStaticMemberValue(AString: string);
begin
AStaticMember := AString;
end;
end.
那麼在TMyClass中宣告的屬性及方法是否是靜態屬性或靜態方法呢?請看下面的例項:
...
uses unit2
...
procedure TForm1.Button2Click(Sender: T);
begin
{不需宣告TMyClass的例項,可直接設定及讀取靜態屬性的值}
TMyClass.SetStaticMemberValue('MyClass');
showmessage(TMyClass.GetStaticMemberValue);
end;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-991838/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Delphi 類的靜態屬性 (轉)
- DELPHI中的靜態虛擬及動態方法函式的區別。 (轉)函式
- PHP 中 static 靜態屬性和靜態方法的呼叫PHP
- JavaScript 靜態屬性與靜態方法JavaScript
- 類的靜態屬性和方法
- 關於php中靜態方法,靜態屬性的一些淺見PHP
- 靜態屬性
- 注意!非靜態內部類和非靜態方法的匿名類的this$0屬性
- TypeScript 類靜態屬性TypeScript
- Object C學習筆記10-靜態方法和靜態屬性Object筆記
- es5繼承和es6繼承中靜態方法、靜態屬性的差異繼承
- [譯] 繼承 JavaScript 類中的靜態屬性繼承JavaScript
- JavaScript私有屬性和靜態屬性JavaScript
- net 靜態方法與非靜態方法
- wpf xaml binding靜態類的屬性
- 物件導向2--靜態方法、類方法、屬性方法物件
- 靜態變數與靜態方法變數
- js 物件方法、類方法、原型方法的區別;私有屬性、公有屬性、公有靜態屬性的區別JS物件原型
- ASP.NET偽靜態及靜態ASP.NET
- 深入理解JavaScript類與物件:揭秘類欄位和靜態屬性的妙用,js靜態屬性和例項屬性JavaScript物件JS
- Java的方法靜態方法Java
- 靜態方法
- PHP類的靜態(static)方法和靜態(static)變數PHP變數
- 在JSP中的JavaBean設定靜態屬性和方法有沒有意義?JSJavaBean
- Object上的靜態方法Object
- static靜態方法的使用
- 介面中的預設方法與靜態方法
- Delphi中停靠技術的實現 (轉)
- 16 ##### 適合靜態方法的場景:方法中不使用物件的值,則直接使用靜態方法物件
- 偽靜態、靜態和動態的區別
- Java中靜態跟非靜態的區別總結Java
- 物件中的靜態屬性是否在多執行緒中共享物件執行緒
- c#之saf靜態屬性與建構函式C#函式
- Delphi 6.0中屬性編輯器的解決方案 (轉)
- Ubuntu裡怎樣設定靜態IP?Ubuntu中設定靜態IP的方法Ubuntu
- 談談網站靜態化網站
- BootStrap的動態模態框及靜態模態框boot
- c++ web框架實現之靜態反射實現C++Web框架反射