Download - Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects
![Page 1: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/1.jpg)
Microsoft Visual Basic 2005: Reloaded
Second Edition
Chapter 10Creating Classes and Objects
![Page 2: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/2.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 2
Objectives
After studying this chapter, you should be able to:
• Define a class
• Instantiate an object from a class that you define
• Add Property procedures to a class
• Include data validation in a class
• Create default and parameterized constructors
![Page 3: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/3.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 3
Objectives (continued)
• Include methods in a class
• Overload the methods in a class
• Create a derived class using inheritance
![Page 4: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/4.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 4
Classes and Objects
• Object-oriented programs are based on objects that are instantiated (created) from classes
• Properties: attributes that describe the object• Methods: behaviors that allow the object to perform
tasks• A class encapsulates properties and methods• VB.Net has many built-in classes• You can define your own classes
![Page 5: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/5.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 5
Defining a Class
• Class statement: defines a class• Use Pascal casing for the class name• Define attributes and behaviors of the class within
the class
• Code editor automatically adds the Class statement
![Page 6: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/6.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 6
Defining a Class (continued)
![Page 7: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/7.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 7
Defining a Class (continued)
![Page 8: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/8.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 8
Defining a Class (continued)
![Page 9: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/9.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 9
Defining a Class (continued)
![Page 10: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/10.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 10
Defining a Class (continued)
![Page 11: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/11.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 11
Example 1 – Using a Class that Contains Public Variables Only
![Page 12: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/12.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 12
Using a Class that Contains Public Variables Only (continued)
• Any class variable declared with Public keyword can be accessed by any application that contains an instance of the class
• Use Pascal case for Public variables in a class
![Page 13: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/13.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 13
Using a Class that Contains Public Variables Only (continued)
![Page 14: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/14.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 14
Using a Class that Contains Public Variables Only (continued)
![Page 15: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/15.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 15
Using a Class that Contains Public Variables Only (continued)
![Page 16: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/16.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 16
Using a Class that Contains Public Variables Only (continued)
![Page 17: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/17.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 17
Using a Class that Contains Public Variables Only (continued)
• Access an object’s attributes using the dot operator:
objectVariable.attribute• Disadvantages of Public variables in a class:
– The class cannot control the values assigned to the variables
– Violates the concept of OOP encapsulation
![Page 18: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/18.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 18
Example 2 – Using a Class that Contains a Private Variable, a
Property Procedure, and Two Methods
![Page 19: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/19.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 19
Using a Class that Contains a Private Variable, a Property Procedure, and
Two Methods (continued)
• Class variables declared with Private keyword:– Can only be used by the class– Are hidden from the rest of the application– Names should start with underscore _
• Application can change class variable values only by using the class’s methods
![Page 20: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/20.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 20
Using a Class that Contains a Private Variable, a Property Procedure, and
Two Methods (continued)
• Property procedure: – A Public method in the class for manipulating a class
variable– Exposes a Private class variable as a Property for
use by the application
![Page 21: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/21.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 21
Using a Class that Contains a Private Variable, a Property Procedure, and
Two Methods (continued)
![Page 22: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/22.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 22
Using a Class that Contains a Private Variable, a Property Procedure, and
Two Methods (continued)• Get block: contains code to allow an application to
retrieve the contents of the variable exposed as a Property
• Set block: allows an application to assign a value to the variable exposed as a Property
• ReadOnly keyword: makes a property readable but not settable (no Set block)
• WriteOnly keyword: makes a property settable but not readable (no Get block)
![Page 23: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/23.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 23
Constructors
• Constructor: – A method whose instructions are processed
automatically when an object is instantiated from a class
– Purpose is to initialize the class’s Private variables– Method name must be New– May or may not have parameters
• Default constructor: a constructor with no parameters
![Page 24: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/24.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 24
Constructors (continued)
![Page 25: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/25.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 25
Methods Other than Constructors
• Methods in a class can be Sub or Function procedures
• Use Pascal casing for method names
![Page 26: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/26.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 26
Methods Other than Constructors (continued)
![Page 27: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/27.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 27
Methods Other than Constructors (continued)
![Page 28: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/28.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 28
Methods Other than Constructors (continued)
![Page 29: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/29.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 29
Methods Other than Constructors (continued)
![Page 30: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/30.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 30
Example 3 – Using a Class that Contains Two Constructors
![Page 31: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/31.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 31
Using a Class that Contains Two Constructors (continued)
![Page 32: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/32.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 32
Using a Class that Contains Two Constructors (continued)
• Parameterized constructor: a constructor method that contains parameters
• Method signature: method name and parameter list
• Best practices:– Parameterized constructor should set the values of the
class variables using the class’s Property procedures to take advantage of any validation code in the Property procedures
![Page 33: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/33.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 33
Using a Class that Contains Two Constructors (continued)
![Page 34: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/34.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 34
Using a Class that Contains Two Constructors (continued)
![Page 35: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/35.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 35
Using a Class that Contains Two Constructors (continued)
![Page 36: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/36.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 36
Using a Class that Contains Two Constructors (continued)
![Page 37: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/37.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 37
Using a Class that Contains Two Constructors (continued)
![Page 38: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/38.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 38
Example 4 – Using a Class that Contains Overloaded Methods
![Page 39: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/39.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 39
Using a Class that Contains Overloaded Methods (continued)
![Page 40: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/40.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 40
Using a Class that Contains Overloaded Methods (continued)
• Overloaded methods: two or more methods that have the same name but different parameters
• Constructors can be overloaded• To overload a non-constructor method, use the Overloads keyword in the method declaration
• Many of VB’s built-in methods are overloaded, as shown in the Intellisense feature:
![Page 41: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/41.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 41
Using a Class that Contains Overloaded Methods (continued)
![Page 42: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/42.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 42
Using a Class that Contains Overloaded Methods (continued)
![Page 43: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/43.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 43
Using a Class that Contains Overloaded Methods (continued)
![Page 44: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/44.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 44
Using a Class that Contains Overloaded Methods (continued)
![Page 45: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/45.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 45
Using a Class that Contains Overloaded Methods (continued)
![Page 46: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/46.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 46
Example 5 – Using a Base Class and a Derived Class
• Inheritance: one class can be created from another class
• Base class: the original class
• Derived class: the new class created from the base class
• Inherits keyword: specifies the base class
![Page 47: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/47.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 47
Using a Base Class and a Derived Class (continued)
![Page 48: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/48.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 48
Using a Base Class and a Derived Class (continued)
![Page 49: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/49.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 49
Using a Base Class and a Derived Class (continued)
![Page 50: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/50.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 50
Using a Base Class and a Derived Class (continued)
• Derived class contains all of the attributes and behaviors of the base class
• Derived class may also contain its own attributes and behaviors
• Overridable keyword: indicates the base class method can be overridden by the derived class
• Overrides keyword: indicates that a method in the derived class overrides the method with the same name in the base class
![Page 51: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/51.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 51
Using a Base Class and a Derived Class (continued)
• MyBase keyword: refers to the base class• MyBase.New: tells the computer to process the
code in the base class’s constructor
![Page 52: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/52.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 52
Using a Base Class and a Derived Class (continued)
![Page 53: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/53.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 53
Programming Tutorial
![Page 54: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/54.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 54
Programming Example
![Page 55: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/55.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 55
Summary
• Objects are instantiated from classes
• Classes encapsulate their attributes and behaviors
• Class Public data members and methods are exposed to any application that creates an object from the class; class Private members are not
• Class Public properties allow an application to manipulate private class data members
• ReadOnly keyword allows a property to be retrieved but not changed
![Page 56: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/56.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 56
Summary (continued)
• WriteOnly allows a property to be changed but not retrieved
• Property Get block implements retrieving the property value
• Property Set block implements changing the property value
• Constructor: a sub procedure named New that is processed when an object is created from the class
• Default constructor: has no parameters
![Page 57: Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 10 Creating Classes and Objects](https://reader036.vdocuments.site/reader036/viewer/2022062417/551b7035550346ae7a8b628e/html5/thumbnails/57.jpg)
Microsoft Visual Basic 2005: Reloaded, Second Edition 57
Summary (continued)
• Derived class: a new class created from another class (the base class)
• Overridable keyword: indicates that a method in the base class can be overridden in the derived class
• Overrides keyword: indicates that a method in the derived class overrides a method of the same name in the base class
• Inherits clause: creates a derived class• MyBase keyword: refers to the base class