chapter 11: classes and objects programming with microsoft visual basic.net, second edition

Post on 16-Dec-2015

245 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Chapter 11: Classes and Objects

Programming with Microsoft Visual Basic .NET, Second Edition

Programming with Microsoft Visual Basic .NET, Second Edition 2

Classes and ObjectsLesson A Objectives

• Define a class

• Add properties to a class

• Instantiate an object from a class that you define

Programming with Microsoft Visual Basic .NET, Second Edition 3

Defining a Class

• Classes that you define must specify the properties and methods of the objects they create

– Properties describe the characteristics of the objects

– Methods specify the tasks that the objects can perform

Programming with Microsoft Visual Basic .NET, Second Edition 4

Defining a Class (continued)

• Use the Class statement to define a class in Visual Basic .NET

• Enter the Class statement in a class file

• After defining a class, you can use it to create objects

Programming with Microsoft Visual Basic .NET, Second Edition 5

Defining a Class (continued)

Figure 11-3: Syntax and an example of the Class statement

Programming with Microsoft Visual Basic .NET, Second Edition 6

Defining a Class (continued)

Figure 11-4: Procedure for adding a class file to a project

Programming with Microsoft Visual Basic .NET, Second Edition 7

Defining a Class (continued)

Figure 11-7: Syntax and examples of creating an object from a class

Programming with Microsoft Visual Basic .NET, Second Edition 8

Using a Class That Contains Properties Only

• The sales manager at Sweets Unlimited wants an application to allow him to save each salesperson’s name, quarterly sales amount, and quarterly bonus amount in a sequential access file

• The bonus amount is calculated by multiplying the sales amount by 5%

Programming with Microsoft Visual Basic .NET, Second Edition 9

Using a Class That Contains Properties Only (continued)

Figure 11-8: Sample run of the Sweets Unlimited application

Programming with Microsoft Visual Basic .NET, Second Edition 10

Using a Class That Contains Properties Only (continued)

• The Salesperson class contains three properties: Name, Sales, and Bonus

• Rules for naming properties

– A name should be composed of one or more words, with the first letter of each word being capitalized

– Use nouns and adjectives to name a property

Programming with Microsoft Visual Basic .NET, Second Edition 11

More on Classes and Objects Lesson B Objectives

• Add Property procedures to a class

• Create constructors

• Add methods to a class

Programming with Microsoft Visual Basic .NET, Second Edition 12

Using a Class That Contains Properties and Methods

• You will learn how to create a class named Square and use the class in the Area application

• Square class

– Contains one property and two methods

– Creates an object that calculates and returns the area of a square, using the side measurement provided by the application

Programming with Microsoft Visual Basic .NET, Second Edition 13

Using a Class That Contains Properties and Methods (continued)

Figure 11-11: Sample run of the Area application

Programming with Microsoft Visual Basic .NET, Second Edition 14

Using a Class That Contains Properties and Methods (continued)

• An application cannot directly refer to a Private variable in a class; it must refer to the variable indirectly, through the use of a Public property

• You create a Public property using a Property procedure

Programming with Microsoft Visual Basic .NET, Second Edition 15

Using a Class That Contains Properties and Methods (continued)

Figure 11-13: Syntax and an example of creating a Property procedure

Programming with Microsoft Visual Basic .NET, Second Edition 16

Using a Class That Contains Properties and Methods (continued)

Figure 11-13: Syntax and an example of creating a Property procedure (continued)

Programming with Microsoft Visual Basic .NET, Second Edition 17

Using a Class That Contains Properties and Methods (continued)

• Within the Property procedure you define a Get block of code and a Set block of code

• Code in the Get block allows an application to retrieve the contents of the Private variable associated with the property

• Code in the Set block allows the application to assign a value to the Private variable associated with the property

Programming with Microsoft Visual Basic .NET, Second Edition 18

Using a Class That Contains Properties and Methods (continued)

• The Get block uses the Get statement, which begins with the keyword Get and ends with the keywords End Get

• The Set block uses the Set statement, which begins with the keyword Set and ends with the keywords End Set

Programming with Microsoft Visual Basic .NET, Second Edition 19

Constructors

• A constructor is a method whose instructions the computer processes, automatically, each time an object is created (instantiated) from the class

• The purpose of a constructor is to initialize the variables of the class

Programming with Microsoft Visual Basic .NET, Second Edition 20

Constructors (continued)

Figure 11-14: Syntax and an example of creating a constructor

Programming with Microsoft Visual Basic .NET, Second Edition 21

Constructors (continued)

• Every class should have at least one constructor

• A constructor that has no parameters is called the default constructor

• Each constructor included in a class has the same name, New, but its parameters (if any) must be different from any other constructor in the class

Programming with Microsoft Visual Basic .NET, Second Edition 22

Methods Other Than Constructors

• Methods, other than constructors, included in a class can be either Sub procedures or Function procedures

• Rules for naming methods

– Names should be composed of one or more words, with the first letter of each word being capitalized

– The first word in a name should be a verb; subsequent words should be nouns and adjectives

Programming with Microsoft Visual Basic .NET, Second Edition 23

Methods Other Than Constructors (continued)

Figure 11-15: Syntax and an example of creating a method that is not a constructor

Programming with Microsoft Visual Basic .NET, Second Edition 24

Coding the Cornwall Calendars Application

Lesson C Objectives

• Create a class that contains more than one constructor

• Include data validation in a class

Programming with Microsoft Visual Basic .NET, Second Edition 25

Using a Class That Contains Two Constructors and Data

Validation• MyDate class

– Contains more than one constructor

– Performs data validation

– Creates an object that returns a month number, followed by a slash, and a day number

• MyDate class is used in the Personnel application

Programming with Microsoft Visual Basic .NET, Second Edition 26

Using a Class That Contains Two Constructors and DataValidation (continued)

Figure 11-18: Sample run of the Personnel application

Programming with Microsoft Visual Basic .NET, Second Edition 27

Using a Class That Contains Two Constructors and DataValidation (continued)

• MyDate class contains:

– Two Private variables: monthNum and dayNum

– Two Property procedures: Month and Day

– Three methods: two named New and one named GetNewDate

Programming with Microsoft Visual Basic .NET, Second Edition 28

Coding the Cornwall Calendars Application

• Cornwall Calendars application

– Created for Jesse Washington, the manager of the Accounts Payable department at Cornwall Calendars

– Should allow Jesse to record (in a sequential access file) the check number, date, payee, and amount of each check written by his department

Programming with Microsoft Visual Basic .NET, Second Edition 29

Coding the Cornwall Calendars Application (continued)

Figure 11-21: Interface for the Cornwall Calendars application

Programming with Microsoft Visual Basic .NET, Second Edition 30

Coding the Cornwall Calendars Application (continued)

Figure 11-22: TOE chart for the Cornwall Calendars application

Programming with Microsoft Visual Basic .NET, Second Edition 31

Coding the Cornwall Calendars Application (continued)

Figure 11-22: TOE chart for the Cornwall Calendars application (continued)

Programming with Microsoft Visual Basic .NET, Second Edition 32

Creating the Check Class

• The Check class will contain four properties and two methods

• The Cornwall Calendars application will use the Check class to create a Check object

– It will store the user input in the object’s properties

– It will use the object’s methods to initialize the Private variables and save the check information to a sequential access file

Programming with Microsoft Visual Basic .NET, Second Edition 33

Creating the Check Class (continued)

Figure 11-23: Pseudocode for the Check class

Programming with Microsoft Visual Basic .NET, Second Edition 34

Coding the uiSaveButton Click Event Procedure

Figure 11-31: Pseudocode for the uiSaveButton’s Click event procedure

Programming with Microsoft Visual Basic .NET, Second Edition 35

Coding the uiSaveButton Click Event Procedure (continued)

• The selection structure in the pseudocode determines whether the user entered the check information—in this case, the check number, date, payee, and amount

• If the user neglected to enter one or more of the items, the selection structure’s false path should display an appropriate message

Programming with Microsoft Visual Basic .NET, Second Edition 36

Coding the uiSaveButton Click Event Procedure (continued)

Figure 11-34: Message box that appears when the user does not enter all of the check information

Programming with Microsoft Visual Basic .NET, Second Edition 37

Summary

• Two versions of the syntax used to create (instantiate) an object from a class:

– Version 1: {Dim | Private} objectVariable As class objectVariable = New class

– Version 2:{Dim | Private} objectVariable As New class

• To access the properties of an object, use the syntax: objectVariable.property

Programming with Microsoft Visual Basic .NET, Second Edition 38

Summary (continued)

• To create a Public property, use a Property procedure

– The Get block allows an application to retrieve the contents of the Private variable associated with the property

– The Set block allows an application to assign a value to the Private variable associated with the property

Programming with Microsoft Visual Basic .NET, Second Edition 39

Summary (continued)

• A constructor that has no parameters is called the default constructor

• To include more than one constructor in a class, each constructor’s parameters must be different from any other constructor in the class

• To include data validation in a class, place the data validation in the Set block of a Property procedure

top related