On Wednesday, January 29, 2003, 4:49:40 AM, Julius Fenata wrote: > Kalo saya sudah bisa lakukan seperti ini: > MyAnimal := TAnimal.Create; > Bisa ngga..., saya ngga perlu declare di class-nya seperti ini...? > type > TAnimal = class > \\constructor <file://\\constructor> Create; --> Ngga perlu > constructor lagi..., langsung aja methodnya... > procedure blablabla; > function blablabla; > end;
Kalau kita tidak perlu mengintitialize apa - apa pada waktu object construction, contoh anda di atas is oke. Setiap object adalah turunan dari TObject dan TObject punya constructor Create. Artinya semua class (dalam delphi) otomatis mewarisi constructor create. > Nach..., sebenernya gunanya constructor itu untuk apa ya..., kalo di > help-nya disebut 'special method that creates and initializes instance > objects'. Tapi kalau saya bisa langsung seperti yang diatas: MyAnimal := > TAnimal.Create; trus ngga perlu lagi constructor lagi kan? Asumsinya bahwa > Object tersebut sudah di-create dan otomatis sudah terdaftar di memory... Tapi kan ada variable-variable dari TAnimal yang perlu diinitialize, jadi kita mesti bikin constructor yang sesuai dengan class yang kita definisikan. Contoh: type TJenisMakanan = ( SukaDaging , SukaRumput , SukaSemua ); TJenisBinatang = ( Carnivora , Herbivora , Omnivora ); TStrukturPencernaan = class ... ... // Sorry, saya bukan ahli biologi end; TAnimal = class private FJenisBinatang : TJenisBinatang; FStrukturPencernaan : TStrukturPencernaan; public constructor Create( Makanan : TJenisMakanan );virtual destructor Destroy;override; property JenisBinatang : TJenisBinatang read FJenisBinatang; property StrukturPencernaan : TStrukturPencernaan; end; constructor TAnimal.Create( Makanan : TMakanan ); begin inherited Create; // <-- manggil Create dari TObject // Initialize Struktur Pencernaan FStrukturPencernaan := TStrukturPencernaan.Create; end; destructor TAnimal.Destroy begin FStrukturPencernaan.Free; end; ..... HTH, -- Bambang http://bpranoto.tripod.com Let's win quizzes!! http://www.itpaystolearn.com/default.asp?ref_id=ADY095 Ok, so what's the speed of dark? Berlangganan: [EMAIL PROTECTED] Stop Berlangganan: [EMAIL PROTECTED] Keluhan Milis(Unbouncing,spam,dll): [EMAIL PROTECTED] Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
