Delphi Sınıf Yöntemlerini Anlama

İçinde Delphi, yöntem bir nesne üzerinde işlem gerçekleştiren bir yordam veya işlevdir. Sınıf yöntemi, nesne başvurusu yerine sınıf başvurusunda çalışan bir yöntemdir.

Satırlar arasında okursanız, sınıfın bir örneğini (nesne) oluşturmamış olsanız bile sınıf yöntemlerine erişilebilir olduğunu göreceksiniz.

Sınıf Yöntemleri vs. Nesne Yöntemleri

Her oluşturduğunuzda Delphi bileşeni dinamik olarak, bir sınıf yöntemi kullanırsınız: Yapıcı.

Create yapıcısı, nesne yöntemleri olan Delphi programlamada karşılaşacağınız diğer tüm yöntemlerin aksine bir sınıf yöntemidir. Sınıf yöntemi, sınıfın bir yöntemidir ve uygun şekilde bir nesne yöntemi, sınıfın bir örneği tarafından çağrılabilen bir yöntemdir. Bu en iyi şekilde, netlik için sınıflar ve nesneler kırmızı renkle vurgulanmış bir örnekle gösterilmiştir:

myCheckbox: = TCheckbox. Oluştur (nil);

Burada Create çağrısından önce sınıf adı ve nokta ("TCheckbox.") Gelir. Bu genellikle bir kurucu olarak bilinen sınıfın bir yöntemidir. Bu, sınıf örneklerinin yaratıldığı mekanizmadır. Sonuç TCheckbox sınıfının bir örneğidir. Bu örneklere nesne denir. Önceki kod satırını aşağıdakilerle karşılaştırın:

instagram viewer

MyCheckBox. repaint;

Burada, TCheckbox nesnesinin (TWinControl'den devralınan) Repaint yöntemi çağrılır. Repaint çağrısından önce nesne değişkeni ve nokta ("myCheckbox.") Gelir.

Sınıf yöntemleri, sınıfın bir örneği olmadan çağrılabilir (ör. "TCheckbox. Oluşturmak"). Sınıf yöntemleri doğrudan bir nesneden de çağrılabilir (ör. "MyCheckbox. Sınıf adı"). Ancak nesne yöntemleri yalnızca bir sınıf örneği tarafından çağrılabilir (ör. "MyCheckbox. Repaint ").

Sahne arkasında Oluştur oluşturucu bellek ayırma (ve TCheckbox veya ataları tarafından belirtilen ek başlatma işlemlerini gerçekleştirme).

Kendi Sınıf Yöntemlerinizle Deney Yapma

AboutBox'ı düşünün (özel bir "Bu Uygulama Hakkında" formu). Aşağıdaki kod aşağıdaki gibi bir şey kullanır:

prosedür TfrMain.mnuInfoClick (Gönderen: TObject);
başla
AboutBox: = TAboutBox. Oluştur (nil);
Deneyin
AboutBox. ShowModal;
en sonunda
AboutBox. Serbest bırakmak;
son;
son;
Bu, elbette, işi yapmanın çok güzel bir yoludur, ancak sadece kodun okunmasını (ve yönetilmesini) kolaylaştırmak için, bunu değiştirmek çok daha verimli olacaktır:
prosedür TfrMain.mnuInfoClick (Gönderen: TObject);
başla
TAboutBox. Kendini göster;
son;
Yukarıdaki satır TAboutBox sınıfının "ShowYourself" sınıfı yöntemini çağırır. "ShowYourself" "anahtar kelimesi ile işaretlenmelidir"sınıf":
sınıf prosedürü TAboutBox. Kendini göster;
başla
AboutBox: = TAboutBox. Oluştur (nil);
Deneyin
AboutBox. ShowModal;
en sonunda
AboutBox. Serbest bırakmak;
son;
son;

Mind Gezilecek Yerler

  • Sınıf yönteminin tanımı, yordamı başlatan yordam veya işlev anahtar sözcüğünden önce ayrılmış sözcük sınıfını içermelidir.
  • AboutBox formu otomatik olarak oluşturulmaz (Project-Options).
  • AboutBox birimini ana formun kullanım yan tümcesine koyun.
  • AboutBox biriminin arayüz (public) kısmında prosedürü bildirmeyi unutmayın.
instagram story viewer