مقدمة إلى الكائنات في فيجوال بايسك
فيجوال ستوديو 2008
و الكائن هو الهيكل الذي يحتوي على البيانات والأساليب التي معالجة البيانات. تقريبا كل ما تقوم به في فيجوال باسيك مقترن الكائنات. إذا كنت جديدا على البرمجة الموجهة نحو الكائن، فإن المصطلحات والمفاهيم التالية تساعدك على البدء.
الفصول والأشياء
وتستخدم عبارة "كلاس" و "أوبجيكت" كثيرا في البرمجة الموجهة نحو الكائن بحيث يسهل الخلط بين المصطلحات. وبصفة عامة، الطبقة هي تمثيل مجرد لشيء ما، في حين أن الكائن هو مثال قابل للاستخدام من الشيء الذي يمثله الطبقة. الاستثناء الوحيد لهذه القاعدة هو أعضاء الفصل المشترك، والتي يمكن استخدامها في كلتا الحالتين من متغيرات الفئة والكائن المعلنة كنوع الفئة.
الحقول، الخصائص، الطرق، والأحداث
تتكون الفصول من الحقول والخصائص والطرق والأحداث. تمثل الحقول والخصائص المعلومات التي يحتوي عليها عنصر. الحقول مثل المتغيرات لأنه يمكن قراءتها أو تعيينها مباشرة. على سبيل المثال، إذا كان لديك كائن باسم "سيارة"، فيمكنك تخزين لونه في حقل باسم "اللون".
يتم استرداد الخصائص وتعيين مثل الحقول، ولكن يتم تنفيذها من قبل الملكية الحصول على والممتلكات تعيينالإجراءات، التي توفر المزيد من السيطرة على كيفية تعيين القيم أو إرجاعها. تساعد طبقة التفاعل بين القيمة المخزنة والإجراءات التي تستخدم هذه القيمة على عزل بياناتك وتتيح لك التحقق من صحة القيم قبل تعيينها أو استرجاعها.
تمثل الطرق الإجراءات التي يمكن لأحد العناصر تنفيذها. على سبيل المثال، يمكن أن يكون للكائن "سيارة" طرق "ستارتينجين" و "دريف" و "ستوب". يمكنك تعريف طرق بإضافة إجراءات، إما الروتين الفرعي أو وظائف، إلى الفصل الخاص بك.
Events are notifications an object receives from, or transmits to, other objects or applications. Events enable objects to perform actions whenever a specific occurrence occurs. An example of an event for the "Car" class would be a "Check_Engine" event. Because Microsoft Windows is an event-driven operating system, events can come from other objects, applications, or user input such as mouse clicks or key presses.
Encapsulation, Inheritance, and Polymorphism
Fields, properties, methods, and events are only one half of the object-oriented programming equation. True object-orient programming requires objects to support three qualities: encapsulation, inheritance, and polymorphism.
Encapsulation means that a group of related properties, methods, and other members are treated as a single unit or object. Objects can control how properties are changed and methods are executed. For example, an object can validate values before enabling property changes. Encapsulation also makes it easier to change your implementation at a latter date by letting you hide implementation details of your objects, a practice called data hiding.
Inheritance describes the ability to create new classes based on an existing class. The new class inherits all the properties and methods and events of the base class, and can be customized with additional properties and methods. For example, you can create a new class named "Truck" based on the "Car" class. The "Truck" class inherits the "Color" property from the "Car" class and can have additional properties such as "FourWheelDrive."
Polymorphism means that you can have multiple classes that can be used interchangeably, even though each class implements the same properties or methods in different ways. Polymorphism is important to object-oriented programming because it lets you use items with the same names, regardless of what type of object is in use at the moment. For example, given a base class of "Car," polymorphism enables the programmer to define different "StartEngine" methods for any number of derived classes. The "StartEngine" method of a derived class named "DieselCar" may be completely different from the method with the same name in the base class. Other procedures or methods can use the "StartEngine" method of the derived classes in the same way, no matter what type of "Car" object is being used at the time.
Overloading, Overriding, and Shadowing
Overloading, overriding, and shadowing are similar concepts that can be easy to confuse. Although all three techniques enable you to create members with the same name, there are some important differences.
- Overloaded members are used to provide different versions of a property or method that have the same name, but that accept different number of parameters, or parameters with different data types.
- Overridden properties and methods are used to replace an inherited property or method that is not appropriate in a derived class. Overridden members must accept the same data type and number of arguments. Derived classes inherit overridden members.
- يتم استخدام الأعضاء المظللة لاستبدال عضو لديه نطاق أوسع. أي نوع يمكن الظل أي نوع آخر.على سبيل المثال، يمكنك تعريف الخاصية التي تعرض طريقة موروثة بنفس الاسم. لا يمكن أن يكون الموروثة أعضاء مظللة.