Add more constructors to TwoDShape : Constructor « Class Interface « C# / C Sharp





Add more constructors to TwoDShape

Add more constructors to TwoDShape
/*
C#: The Complete Reference 
by Herbert Schildt 

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


// Add more constructors to TwoDShape. 
 
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; 
  } 
 
  // 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. This automatically invokes 
     the default constructor of TwoDShape. */ 
  public Triangle() { 
    style = "null"; 
  } 
 
  // Constructor that takes three arguments. 
  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";  
  } 
 
  // 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 Shapes5 { 
  public static void Main() { 
    Triangle t1 = new Triangle(); 
    Triangle t2 = new Triangle("right", 8.0, 12.0); 
    Triangle t3 = new Triangle(4.0); 
 
    t1 = t2; 
 
    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()); 
 
    Console.WriteLine(); 
 
    Console.WriteLine("Info for t3: "); 
    t3.showStyle(); 
    t3.showDim(); 
    Console.WriteLine("Area is " + t3.area()); 
 
    Console.WriteLine(); 
  } 
}


           
       










Related examples in the same category

1.constructor initializers are called bottom-up but the constructors are invoked top-down starting with the constructor in the base class
2.Check the parameter in construtor
3.Constructor overloading 3
4.Add a constructor to TriangleAdd a constructor to Triangle
5.Add constructors to TwoDShapeAdd constructors to TwoDShape
6.Demonstrate an overloaded constructorDemonstrate an overloaded constructor
7.Demonstrate invoking a constructor through thisDemonstrate invoking a constructor through this
8.Illustrates how to define a constructorIllustrates how to define a constructor
9.Shows the order in which constructors and destructors are called in a C# programShows the order in which constructors and destructors are called in a C# program
10.Illustrates overloaded constructorsIllustrates overloaded constructors
11.Illustrates a copy constructorIllustrates a copy constructor
12.A simple constructorA simple constructor
13.A parameterized constructorA parameterized constructor
14.Add a constructor to BuildingAdd a constructor to Building
15.C# Class Constructor Overloading