Is2215 lecture3 student (1)
Upcoming SlideShare
Loading in...5
×
 

Is2215 lecture3 student (1)

on

  • 481 views

 

Statistics

Views

Total Views
481
Views on SlideShare
481
Embed Views
0

Actions

Likes
0
Downloads
7
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Is2215 lecture3 student (1) Is2215 lecture3 student (1) Presentation Transcript

  • FROM THEORY TO PRACTICEEXTENDING OUR CLASS
  • InheritanceBase Class Student Graduate Derived Class
  • Create Properties Inherits Keyword Private Property Property Procedure View slide
  • Creating the Object View slide
  • Using the Object
  • ...MORE ON INHERITANCE
  • Class Person Public Name As String Public Address As String Public City As StringEnd Class
  • Public Class Customer Public Name As String Public Address As String Public City As StringEnd ClassPublic Class Employee Public Name As String Public Addresss As String Public City As StringEnd Class
  • VB.NET Supports SingleInheritancePublic Class Programmer Inherits Employee Public Project As StringEnd ClassPublic Class Manager Inherits Employee Public intMangedEmployees As IntegerEnd Class
  • Inheritance Hierarchy In the previous example Programmer class contains members defined in its immediate base class, Employee Also members defined in the Employee’s base class, Person
  • Protected Accessibility A derived Class does not have access to its base classes’ Private Members Private Members can only be accessed in the immediate Class in which they are defined Protected Members can however be accessed within an inheritance hierarchy
  • Con’tdClass Student Private strStudentID As String Protected CourseTitle As StringEnd Class
  • Cont’dClass Guest Inherits UserSub New ( ) ‘Results in an Error message ‘Error:strStudentID is private to Student strStudentID= “90000000” ‘This will work CourseTitle = “BIS”End Sub
  • ...POLYMORPHISM
  • Overriding If a method or base class does not fit the requirements of the same methods in the derived class you can create a new method with the same name that performs different actions VB supports Polymorphism through overrides You can override a method in the base Class by using the Overridable keyword to declare it You can then declare the same method in the derived class but give it different functionality
  • An ExamplePublic Class ParentClass Public Overridable Sub ParentMethod() MsgBox(“Hello World from parent”) End SubEnd ClassPublic Class ChildClass Inherits ParentClass Public Overrides Sub ParentMethod() msgBox(“Hello World from child”) End SubEnd Class
  • Preventing InheritancePublic NotInheritable Employee()
  • Oveloading Methods One of the most powerful new polymorphic features in VB.NET is the ability to overload a method Overloading means that we can declare a method of the same name more than once in a class once we provide it with a new parameter list A different parameter list in this case means different data types in the list or a different number of arguments.
  • Overloading Methods Cont’dPublic Sub Method1(i As integer, j As Integer) The parameter list of the method above can be thought of as (integer, integer) To overload this method we need to come up with a different paramater list e.g: (string, decimal) (integer, integer, string)
  • Overloading Methods Cont’dPublic Function SearchEmployees(ByRef Name _ As String) As Boolean„Code to search through the databaseMessageBox.Show(“Employee Found”)End Function Arguments are passed to method ByVal as default Perhaps in our application we created a Employee class and we wish to search for employees by employee name:
  • Overloading If you wanted to search for Employees by age?? VB 6? VB.NET?Public Function SearchEmployees (ByRef Age As _ Integer As Boolean‘Code to Search DatabaseMessageBox.Show (“Employee Found”)End Function
  • Terminating In VB6 an object was destroyed when its reference counter was decremented to zero VB.NET does not use reference counting to determine when an object should be destroyed it uses garbage collection
  • Garbage Collection How it works is quite simple Scans system for references Removes problem of circular references and objects living when they should have been destroyed Performance gain, scan when system is idle Can be called explicitlySystem.GC.Collect()
  • Finalize Method Garbage collection is similar to VB6 Class_Terminate Event As object is being terminated the garbage collection will call its Finalize methodProtected Overrides Sub Finalize ()‘Clean up code hereEnd SubMyStudent = Nothing