Title: Click to edit Master title
11
2Objectives
- Define a class
- Add properties to a class
- Instantiate an object from a class that you
define - Add Property procedures to a class
3Objectives (continued)
- Create constructors
- Add methods to a class
- Include data validation in a class
4Classes and Objects
- Object-oriented programs are based on objects,
which are instantiated from classes - A class contains (encapsulates) the properties
(attributes) that describe a person, place, or
thing - Examples Student, School, Book
- An object is a specific instance of a class
- Examples You are a student that goes to a
specific school and are using this specific book - VB has many built-in objects such as Textbox
controls, Forms, and Labels
5Defining a Class
- Use the Class statement
- Begins with keyword Class and ends with End Class
6HOW TO
7Defining a Class (continued)
8Defining a Class (continued)
9HOW TO
10Example 1 Using a Class that Contains
Properties Only
- Assume that the sales manager at Sweets Unlimited
wants an application that allows him to save each
salespersons - name
- quarterly sales amount
- quarterly bonus amount in a sequential access
file - The bonus amount is calculated by multiplying the
sales amount by 5
11Example 1 Using a Class that Contains
Properties Only (continued)
- Figure 11.6 shows a sample run of the Sweets
Unlimited application
12Example 1 Using a Class that Contains
Properties Only (continued)
- Figure 11.7 shows the Salesperson class defined
in the Salesperson.vb file
13Example 1 Using a Class that Contains
Properties Only (continued)
14Example 1 Using a Class that Contains
Properties Only (continued)
15Example 2 Using a Class that Contains
Properties and Methods
- Create a class named Square and then use in the
Area application - Square class creates an object that can calculate
and return the area of a square, using side
measurement provided by application - Figure 11.9 shows a sample run of the Area
application - Figure 11.10 shows the Square class defined in
the Square.vb file
16Example 2 Using a Class that Contains
Properties and Methods (continued)
17Example 2 Using a Class that Contains
Properties and Methods (continued)
18Example 2 Using a Class that Contains
Properties and Methods (continued)
- Creating a Public Property
- Declare a class-level private variable to hold
the value to be stored by the property - Data type of property and private variable must
match each other - Heading begins with keywords Public Property
19Example 2 Using a Class that Contains
Properties and Methods (continued)
- Code Get block to retrieve contents of private
variable - Code Set block to change contents of private
variable - Ends with keywords End Property
20HOW TO
21Constructors
- Constructor? method whose instructions the
computer processes, automatically, each time an
object is created (instantiated) from the class - Constructor begins with Public Sub New followed
by a set of optional parameters - Parameter list may be empty - New()
- No parameters is called default constructor
- Every class should have at least one constructor
and may have several
22HOW TO
23Methods Other Than Constructors
- Sub methods do not return a value
- Function methods return a value to the calling
procedure
24Methods Other Than Constructors (continued)
25Example 3 Using a Class that contains two
Constructors and Data Validation
- Create a class named MyDate and then use in the
Personnel application - MyDate class creates an object that returns a
month number, followed by a slash, and a day
number - Figure 11.15 shows a sample run of the Personnel
application - Figure 11.16 shows the MyDate class defined in
the MyDate.vb file
26Example 3 Using a Class that contains two
Constructors and Data Validation (continued)
27Example 3 Using a Class that contains two
Constructors and Data Validation (continued)
28Example 3 Using a Class that contains two
Constructors and Data Validation (continued)
29Example 3 Using a Class that contains two
Constructors and Data Validation (continued)
30Programming Example Kessler Landscaping
Application
- Monica Kessler, the owner of Kessler Landscaping,
wants an application that she can use to estimate
the cost of laying sod - Use a MyRectangle class in this application
31TOE Chart
32User Interface
33Objects, Properties, and Settings
34Tab Order
35Pseudocode
- btnExit Click event procedure
- 1. close application
- btnCalc Click event procedure
- 1. declare a MyRectangle object
- 2. assign the length and width to the
MyRectangle objects properties - 3. assign the sod price to a variable
- 4. calculate the area of the rectangle
- 5. calculate the total price of the sod
- 6. display the total price of the sod in
lblTotalPrice - txtLength, txtWidth, and txtPrice TextChanged
event procedures - 1. clear the contents of the lblTotalPrice
control
36Code (MyRectangle.vb file)
37Code (MyRectangle.vb file) (continued)
38Code (Kessler Form.vb file)
39Code (Kessler Form.vb file) (continued)
40Summary
- The objects used in an object-oriented program
are created, or instantiated, from classes - A class contains (encapsulates) the properties
(attributes) that describe the object it creates,
and the methods (behaviors) that allow the object
to perform tasks - In Visual Basic .NET, you can create objects from
classes that you define with the Class statement
41Summary (continued)
- Good programming practice to enter Option
Explicit On and Option Strict On statement in
both the form file and class file - The first letter in the class name, as well as
the first letter in any subsequent words in the
name, should be capitalized - The properties in a class should be assigned a
name composed of one or more words, with the
first letter of each word being capitalized - You should use nouns and adjectives to name a
property
42Summary (continued)
- Methods in a class should be assigned a name
composed of one or more words, with the first
letter of each word being capitalized - You should use a verb for the first word in the
name, and nouns and adjectives for any subsequent
words in the name - Variables declared using the Public keyword in a
class definition can be accessed by any
application that uses an object created from the
class - Most classes contain properties and methods
43Summary (continued)
- When an application needs to assign data to or
retrieve data from a Private variable in a class,
it must use a Public property to do so - You create a Public property using a Property
procedure - The Get block in a Property procedure allows an
application to access the contents of the classs
Private variables - The Set block in a Property procedure allows an
application to assign values to the classs
Private variables
44Summary (continued)
- A class can have one or more constructors
- All constructions are Sub procedures
- The default constructor is automatically
processed when an object is created from the class