Docstoc

Object-Oriented Techniques

Document Sample
Object-Oriented Techniques Powered By Docstoc
					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

				
DOCUMENT INFO
Description: 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 and explore techniques for organizing your classes.