Object Oriented Techniques

Page 1

Object-Oriented Techniques

Learn More @ http://www.learnnowonline.com Copyright Š by Application Developers Training Company


Objectives • Understand how derived classes inherit from base classes • Explore how to add and modify members in derived classes • Learn to control how derived classes inherit from base classes • Understand how to create and use interfaces • Explore techniques for organizing your classes

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Agenda • Inheritance • Interfaces • Organizing Classes

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Inheritance • Inefficient to have similar classes with the same members • Create a more generic (base) class and then inherit (derive) from the generic class • Derived classes inherit the members of the base class • Inheritance defines an “is-a” relationship  A corporation is a customer  An individual is a customer Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Inheritance Hierarchy • Customer is the base class and is the most generic representation of a customer • Corporation and Individual are derived classes, inheriting from the base class

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


The “is-a” Relationship • Be thorough when defining the “is-a” relationships among objects in your code • If differences between two types of customers (like Corporation and Individual) are significant, it may warrant making separate classes such as Domestic and Foreign

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Adding Members to Derived Classes • Common properties and methods can go in the base class • Unique properties and methods can be added to derived classes

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Overriding Derived Members • Override a property or method in a derived class to change its behavior • You are replacing the base class member with the derived class member

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Overloading Derived Members • Overload a property or method of a base class to create a specialized version in a derived class • The base class member still exists and can be used in addition to a derived class member

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Calling Base Class Members • Members of a derived class can call members of the base class

Learn More @ http://www.learnnowonline.com Copyright Š by Application Developers Training Company


Abstract Classes and Members • An abstract class is designed to be generic and is incomplete • You cannot create an instance of it and can only derive from it • Abstract class can contain abstract properties and members  Derived classes cannot call these properties from the abstract class  They must implement them on their own

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Sealed Classes and Members • Seal a class to prevent inheriting from it • Seal a member in a derived class to prevent further derived classes from overriding it

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Interfaces • Define a set of properties and methods that a class will implement • Contain no implementation code • A class must implement all members defined in an interface  Visual Studio adds member declarations automatically, you add code to implement members  You can override and overload interface members

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Implementing an Interface • A class must implement all members defined in an interface  Visual Studio adds member declarations automatically, you add code to implement members  You can override and overload interface members

• Class can implement multiple interfaces but can only derive from one class • Use interfaces to implement smaller sets of members and to enable classes to implement only interfaces they need Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Interfaces in the .NET Framework • The .NET Framework contains many interfaces you can use • IComparable provides a general way of comparing value types or classes  Call CompareTo as a method of one type  Pass as argument the type you are comparing the first type with

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Organizing Classes • Classes are a good way to organize your code • You can also organize your classes

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Partial Classes • Helpful on teams where you are writing some class methods and other developers are writing the rest • Split the class definition across multiple files • Compiler combines the partial classes into one class • Calling class uses class the same whether it is made up of partial classes or not

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Nested Classes • Class defined within another class • Organize class members so they are easier to use at runtime • Group members of Customer class  Customer.Information o

CustomerName, City, Region, etc

 Customer.Financial o

CreditLimit, ChangeCreditLimit

 Customer.Sales o

RecordSales Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Namespaces • A way to organize related classes into groups  System.Data contains classes to work with data once you have retrieved it from a data source

• Namespaces can be nested  System.Data.SqlClient contains classes to retrieve data from SQL Server  System.Data.OracleClient contains classes to retrieve data from Oracle

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Namespaces • By default, the application namespace is the name of the project • You can change this in Project Designer • Create your own namespaces to organize classes in class libraries

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Learn More! • This is an excerpt from a larger course. Visit www.learnnowonline.com for the full details! • Learn more on SlideShare  Object-Oriented JavaScript

Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.