Makale OBJECT

Bu Makale Yararlı Oldu mu?

  • Evet

  • Hayır


Sonuçlar yalnızca oylamadan sonra görülebilir.
Object (Nesne)

Bu veri türü, gerçek bir nesneye bir başvuru (veya adres) içerir.
Bu veri türü 4 bayt kullanır.
Varsayılan değer; Nothing'dir.

Variant veri türü herhangi bir değişken türünü depolayabildiği gibi, Object veri türü herhangi bir nesneyi depolayabilir.
Bu veri türünü her kullandığınızda, her zaman Late Binding kullanır.
Nothing anahtar sözcüğü, bir nesne değişkenini gerçek bir nesneden ayırmak için kullanılabilir.
Set ifadesi, bir nesne değişkenine bir nesne referansı atar.

If (nesnem) Is Nothing Then
Set nesnem= Nothing
End If


Bir nesne değişkeninin "Is Nothing" anahtar sözcüğünü kullanarak ayarlanıp ayarlanmadığını öğrenebilirsiniz.
Genel Nesne veri türünü kullanmak, belirli nesne bildirimini kullanmaktan çok daha az verimlidir.
Bu yöntem Late Binding olarak adlandırılır ve bundan kaçınılmalıdır.

Tüm VBA Nesneleri iki sınıftan birine girer. Bir koleksiyondaki tekil nesneler veya nesneler.
Tek nesneler isme göre başvurulur.
Bir koleksiyondaki nesneler bir dizin tarafından başvurulur.

Nitelikli nesneler bir nesne değişkeni oluşturmak için Set deyimini kullandığında uzun yinelenen başvurulardan kaçınmak için nesne değişkenlerini kullanmak, kodunuzun daha hızlı çalışmasına da yardımcı olabilir.

Early Binding vs Late Binding (Erken Bağlanma ve Geç Bağlanma)
Object değişkenleri diğer değişkenlerle aynı şekilde beyan edilir.
Object değişkenlerini bildirmenin üç yolu vardır:

Dim nesnem As Library.ClassName 'erken bağlandı, örnek atanmadı / Nothing
Dim nesnem As New Library.ClassName 'erken bağlandı, örnek atandı.
Object değişkeni kullanılıncaya kadar aslında oluşturulmaz
Dim nesnem As Object 'geç bağlandı, örnek atanmadı / Nothing

Bir sınıfın gerçek örneğine başvuru atamak için Set deyimini kullanmanız gerekir.
Bu, nesneye erken bağlı bir başvuru oluşturur.

Set nesnem= Library.ClassName

Early Binding kullanırken referans eklemek için References iletişim kutusunu kullanmanız gerekir.
Late Binding kullanırken, CreateObject veya GetObject işlevlerini kullanmanız gerekir.

Ayrıca, genel nesne veri türünü kullanarak, uygulamaya özel nesneler bildirmek de mümkündür.
Ancak bu, gerçek nesneyi belirlemekten çok daha az verimlidir.
Bu yöntem Late Binding'e dayanır ve programın önemli ölçüde daha yavaş çalışmasını sağlayabilir.
Object değişkenlerini kullanmak, aynı nesneyi birden çok kez başvurmanız gerektiğinde okunabilirliği büyük ölçüde artırabilir.
Object değişkenlerini kullanmak, etkin kullanılmadığı takdirde kodunuzun yürütme süresini de önemli ölçüde artırabilir.
Çözülmesi gereken her referans, OLE IDispatch arayüzüne bir isabet gerektirir.
Kodun daha hızlı çözülmesi gereken daha az nesne başvurusu çalışacaktır.
Çoğu yöntem değerleri döndürür, ancak bazı nesneleri döndürür.
Eşittir işaretini kullanarak bir değişkene bir nesne atayamazsınız.
Bunun yerine "Set" deyimini kullanmalısınız.
Bir Variant'ın gerçekten nasıl temsil edildiğini keşfetmek için VarType() işlevini kullanabilirsiniz.

Visual Basic, hem belirli hem de genel nesne değişkenlerinin oluşturulmasını destekler.
Bir nesnenin türünü elde etmek için TypeName işlevini kullanın.
Bildirim yapıldığında yeni bir nesne bildirme (örneğin, Dim nesne As New Connection).
Nesneyi her zaman beyan et ve sonra gerçekten ihtiyaç duymadan önce nesneyi ayarla ve her zaman bitirdiğin zaman NOTHING (örneğin Set nesne = Nothing) olarak ayarlamayı unutma.
Object veri türünü kullanarak herhangi bir nesneyi bildirmek mümkündür.
Object veri türünü kullanmak, belirli bir nesne bildiriminden çok daha az verimlidir.
Bunun nedenleri; Excel'in, programın çalışmasına kadar değişkenin ne tür bir nesne ifade ettiğini söyleyememesidir; bu, bazı yürütme sürelerini açıkça tüketir.
Bu, Late Binding olarak adlandırılır ve programların önemli ölçüde daha yavaş çalışmasını sağlayabilir.

Aşağıdaki gibi Genel nesne veri türünü kullanmaktan kaçınılmalıdır.
Dim wbk As Object
Dim wbk As Workbook
 
Murat OSMA

Yorumlar

Üst Alt