Pass a derived class reference to a base class reference : Class Inheritance « Class Interface « C# / C Sharp

Home
C# / C Sharp
1.2D Graphics
2.Class Interface
3.Collections Data Structure
4.Components
5.Data Types
6.Database ADO.net
7.Design Patterns
8.Development Class
9.Event
10.File Stream
11.Generics
12.GUI Windows Form
13.Language Basics
14.LINQ
15.Network
16.Office
17.Reflection
18.Regular Expressions
19.Security
20.Services Event
21.Thread
22.Web Services
23.Windows
24.Windows Presentation Foundation
25.XML
26.XML LINQ
C# / C Sharp by API
C# / CSharp Tutorial
C# / CSharp Open Source
C# / C Sharp » Class Interface » Class InheritanceScreenshots 
Pass a derived class reference to a base class reference
Pass a derived class reference to a base class reference

/*
C#: The Complete Reference 
by Herbert Schildt 

Publisher: Osborne/McGraw-Hill (March 8, 2002)
ISBN: 0072134852
*/


// Pass a derived class reference to a base class reference. 
 
using System; 
 
class TwoDShape 
  double pri_width;  // private 
  double pri_height; // private 
 
  // Default constructor. 
  public TwoDShape() { 
    width = height = 0.0
  
 
  // Constructor for TwoDShape. 
  public TwoDShape(double w, double h) { 
    width = w; 
    height = h; 
  
 
  // Construct object with equal width and height. 
  public TwoDShape(double x) { 
    width = height = x; 
  
 
  // Construct object from an object. 
  public TwoDShape(TwoDShape ob) { 
    width = ob.width; 
    height = ob.height; 
  
 
  // Properties for width and height. 
  public double width 
     get return pri_width; 
     set pri_width = value; 
  
 
  public double height 
     get return pri_height; 
     set pri_height = value; 
  
 
  public void showDim() { 
    Console.WriteLine("Width and height are " 
                       width + " and " + height)
  

 
// A derived class of TwoDShape for triangles. 
class Triangle : TwoDShape 
  string style; // private 
   
  // A default constructor. 
  public Triangle() { 
    style = "null"
  
 
  // Constructor for Triangle. 
  public Triangle(string s, double w, double h: base(w, h) { 
    style = s;  
  
 
  // Construct an isosceles triangle. 
  public Triangle(double x: base(x) { 
    style = "isosceles";  
  
 
  // Construct an object from an object. 
  public Triangle(Triangle ob: base(ob) { 
    style = ob.style; 
  
 
  // Return area of triangle. 
  public double area() { 
    return width * height / 2
  
 
  // Display a triangle's style. 
  public void showStyle() { 
    Console.WriteLine("Triangle is " + style)
  

 
public class Shapes7 
  public static void Main() { 
    Triangle t1 = new Triangle("right"8.012.0)
 
    // make a copy of t1 
    Triangle t2 = new Triangle(t1)
 
    Console.WriteLine("Info for t1: ")
    t1.showStyle()
    t1.showDim()
    Console.WriteLine("Area is " + t1.area())
 
    Console.WriteLine()
 
    Console.WriteLine("Info for t2: ")
    t2.showStyle()
    t2.showDim()
    Console.WriteLine("Area is " + t2.area())
  
}


           
       
Related examples in the same category
1.Inheritance 3Inheritance 3
2.Four layers of class hierarchyFour layers of class hierarchy
3.An example of inheritance-related name hidingAn example of inheritance-related name hiding
4.Using base to overcome name hidingUsing base to overcome name hiding
5.Call a hidden methodCall a hidden method
6.A multilevel hierarchy 1A multilevel hierarchy 1
7.Demonstrate when constructors are calledDemonstrate when constructors are called
8.illustrates inheritanceillustrates inheritance
9.Private field and public Property in inheritancePrivate field and public Property in inheritance
10.Illustrates versioningIllustrates versioning
11.Class Hierarchy testClass Hierarchy test
12.Class Hierarchy with two children classClass Hierarchy with two children class
13.A simple class hierarchyA simple class hierarchy
14.A base class reference can refer to a derived class objectA base class reference can refer to a derived class object
15.a multilevel hierarchya multilevel hierarchy
16.Build a derived class of Vehicle for trucksBuild a derived class of Vehicle for trucks
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.