說到"類", 就會提到:
屬性、方法、事件(這是類包含的內容);
封裝、繼承、多型(這是類的主要用途).
下面定義並呼叫了了乙個過程 myproc、乙個函式 myfun.
unit unit1;
inte***ce
uses
windows, messages, sysutils, variants, classes, graphics, controls, forms,
dialogs, stdctrls;
type
tform1 = class(tform)
button1: tbutton;
procedure button1click(sender: tobject);
end;
varform1: tform1;
implementation
//這是乙個過程, 過程沒有返回值
procedure myproc(var x: integer);
begin
x := x * 2;
end;
//這是乙個函式, 函式必須有返回值
function myfun(var x: integer): integer;
begin
x := x * 2;
result := x;
end;
//呼叫過程與函式
procedure tform1.button1click(sender: tobject);
vari: integer;
begin
i := 6;
myproc(i);
showmessage(inttostr(i));
i := 6;
i := myfun(i);
showmessage(inttostr(i));
end;
end.
把過程與函式 myproc、myfun 包含在乙個類裡面.
unit unit1;
inte***ce
uses
windows, messages, sysutils, variants, classes, graphics, controls, forms,
dialogs, stdctrls;
type
tform1 = class(tform)
button1: tbutton;
procedure button1click(sender: tobject);
end;
varform1: tform1;
implementation
type
tmyclass = class
procedure myproc(var x: integer);
function myfun (var x: integer): integer;
end;
function tmyclass.myfun(var x: integer): integer;
begin
x := x * 2;
result := x;
end;
procedure tmyclass.myproc(var x: integer);
begin
x := x * 2;
end;
//呼叫測試
procedure tform1.button1click(sender: tobject);
vari: integer;
myclass: tmyclass;
begin
myclass := tmyclass.create;
i := 6;
myclass.myproc(i);
showmessage(inttostr(i));
i := 6;
i := myclass.myfun(i);
showmessage(inttostr(i));
myclass.free;
end;
end.
一般情況下, 類都會定義在 inte***ce 區; 在 implementation 區定義的類只能本單元使用.
unit unit1;
inte***ce
uses
windows, messages, sysutils, variants, classes, graphics, controls, forms,
dialogs, stdctrls;
type
tform1 = class(tform)
button1: tbutton;
procedure button1click(sender: tobject);
end;
tmyclass = class
procedure myproc(var x: integer);
function myfun (var x: integer): integer;
end;
varform1: tform1;
implementation
function tmyclass.myfun(var x: integer): integer;
begin
x := x * 2;
result := x;
end;
procedure tmyclass.myproc(var x: integer);
begin
x := x * 2;
end;
//呼叫測試
procedure tform1.button1click(sender: tobject);
vari: integer;
myclass: tmyclass;
begin
myclass := tmyclass.create;
i := 6;
myclass.myproc(i);
showmessage(inttostr(i));
i := 6;
i := myclass.myfun(i);
showmessage(inttostr(i));
myclass.free;
end;
end.
理解 Delphi 的類 五 認識類的繼承
類 乙個是 tform 類 乙個是 tform1 類 tform1 繼承於 tform.tform 是 tform1 的父類 tform1 是 tform 的子類.unit unit1 inte ce uses windows,messages,sysutils,variants,classes,g...
理解 Delphi 的類 六 認識類的封裝
這個類中的兩個字段沒有封裝 tmyclass1 class fname string fage integer end 這個類中的兩個字段封裝了,外部不能讀寫 tmyclass2 class private fname string fage integer public end 那怎麼讀寫?用屬性...
C 類的理解 一) 類的初識
一 類的意義,以及類與物件 類的內容比較多,但類是物件導向的基礎,所謂物件導向 object 其實就是一種更高層次的模組化,也稱為封裝。c語言中,稍微複雜點的資料結構都是用結構體來寫的,結構體本質上就是把一些相關的資訊打包儲存,比如貓 struct cat 這樣我們通過鍵盤輸入很多貓的資訊就可以用結...