इस विधि का औपचारिक नाम से पहले ही उल्लेख किया जा चुका है, लेकिन मुझे यह औपचारिक नाम नहीं पता है, इसलिए यह यहां है। यह उदाहरण टेक्स्टबॉक्स वर्ग (वीबी में उदाहरण) "विस्तारित करता है"। मेरा मानना है कि इस विधि का लाभ यह है कि आपको अंतर्निहित सदस्यों को स्पष्ट रूप से कोड या बेनकाब करने की आवश्यकता नहीं है। उम्मीद है कि यह प्रासंगिक है:
वीबी क्लास मॉड्यूल "MyTextBox":
public Base as TextBox, CustomProperty as Integer
Private Sub Init(newTextBox as TextBox)
Set Base = newTextBox
End Sub
public Property Get CustomProperty2() As String
CustomProperty2 = "Something special"
End Property
कोड फोन के लिए, आप कह सकते हैं:
Dim MyBox as New MyTextBox
MyBox.Init MyForm.TextBox3
यहां से
आप की पहुंच है सब में निर्मित सदस्यों , साथ ही आपके कस्टम सदस्यों।
Debug.Print MyBox.Base.Text
MyBox.CustomProperty = 44
अतिरिक्त पॉलिश के लिए, आप वर्ग के सामान्य प्रॉपर्टी बेस बना सकते हैं, और फिर आप छोड़ सकते हैं "बेस" जब आप आधार वर्ग के गुणों कहते हैं। आप इस तरह बेस सदस्यों फोन:
Debug.Print MyBox().Text
MyBox().Text = "Hello World"
VBA Demo
स्रोत
2010-12-10 15:25:46
अत्यधिक संबंधित: http://stackoverflow.com/questions/554145/liskov-substition-and-composition – cregox