Memahami Metode Kelas Delphi

click fraud protection

Di Delphi, metode adalah prosedur atau fungsi yang melakukan operasi pada suatu objek. Metode kelas adalah metode yang beroperasi pada referensi kelas alih-alih referensi objek.

Jika Anda membaca yang tersirat, Anda akan menemukan bahwa metode kelas dapat diakses bahkan ketika Anda belum membuat turunan kelas (objek).

Metode Kelas vs. Metode Objek

Setiap kali Anda membuat Komponen delphi secara dinamis, Anda menggunakan metode kelas: sang konstruktor.

Buat konstruktor adalah metode kelas, yang bertentangan dengan hampir semua metode lain yang akan Anda temui dalam pemrograman Delphi, yang merupakan metode objek. Metode kelas adalah metode kelas, dan cukup tepat, metode objek adalah metode yang dapat dipanggil dengan turunan kelas. Ini paling baik diilustrasikan oleh contoh, dengan kelas dan objek disorot dengan warna merah untuk kejelasan:

myCheckbox: = TCheckbox. Buat (nihil);

Di sini, panggilan untuk Membuat diawali dengan nama kelas dan titik ("TCheckbox."). Ini adalah metode kelas, umumnya dikenal sebagai konstruktor. Ini adalah mekanisme dimana instance dari sebuah kelas dibuat. Hasilnya adalah turunan dari kelas TCheckbox. Contoh-contoh ini disebut objek. Bandingkan baris kode sebelumnya dengan yang berikut ini:

instagram viewer

kotak centang saya. Mengecat ulang;

Di sini, metode mengecat objek TCheckbox (diwarisi dari TWinControl) disebut. Panggilan untuk mengecat diawali oleh variabel objek dan titik ("myCheckbox.").

Metode kelas dapat dipanggil tanpa turunan kelas (mis., "TCheckbox. Membuat"). Metode kelas juga dapat dipanggil langsung dari objek (mis., "Kotak centang saya. Nama kelas"). Namun metode objek hanya dapat dipanggil dengan instance kelas (mis., "Kotak centang saya. Cat ulang ").

Di belakang layar, konstruktor Buat adalah mengalokasikan memori untuk objek (dan melakukan inisialisasi tambahan seperti yang ditentukan oleh TCheckbox atau leluhurnya).

Bereksperimen dengan Metode Kelas Anda Sendiri

Pikirkan AboutBox (formulir "Tentang Aplikasi Ini"). Kode berikut menggunakan sesuatu seperti:

procedure TfrMain.mnuInfoClick (Pengirim: TObject);
mulai
AboutBox: = TAboutBox. Buat (nihil);
mencoba
Tentang Kotak. ShowModal;
akhirnya
Tentang Kotak. Melepaskan;
akhir;
akhir;
Ini, tentu saja, adalah cara yang sangat baik untuk melakukan pekerjaan itu, tetapi hanya untuk membuat kode lebih mudah dibaca (dan untuk mengelola), akan jauh lebih efisien untuk mengubahnya menjadi:
procedure TfrMain.mnuInfoClick (Pengirim: TObject);
mulai
TAboutBox. Tunjukan dirimu;
akhir;
Baris di atas memanggil metode kelas "ShowYourself" dari kelas TAboutBox. "ShowYourself" harus ditandai dengan kata kunci "kelas":
prosedur kelas TAboutBox. Tunjukan dirimu;
mulai
AboutBox: = TAboutBox. Buat (nihil);
mencoba
Tentang Kotak. ShowModal;
akhirnya
Tentang Kotak. Melepaskan;
akhir;
akhir;

Hal-hal yang Perlu Diingat

  • Definisi metode kelas harus menyertakan kelas kata yang dilindungi undang-undang sebelum prosedur atau fungsi kata kunci yang memulai definisi.
  • Formulir AboutBox tidak dibuat secara otomatis (Project-Options).
  • Masukkan unit AboutBox ke klausa penggunaan dari formulir utama.
  • Jangan lupa untuk mendeklarasikan prosedur di bagian antarmuka (publik) dari unit AboutBox.
instagram story viewer