C#虚方法的声明和使用实例教程

本文以实例形式演示了C#虚方法的声明与使用。实例内容主要包括:演示虚方法的声明和使用,定义虚方法进而求几何面积,用虚方法求原始图形的面积、正方形的面积、等边三角形的面积、圆形的面积等。

实现代码如下:

using System;
public class Graph
{
 protected double ParaVal;
 protected double pi = 3.1415926;
 public Graph ( double Para )
 {
 ParaVal = Para;
 }
 //定义虚方法:求面积
 public virtual double Area( )
 {
 return ParaVal;
 }
}
//图形的子类正方形
public class Square : Graph
{
 public Square( double Para ) : base ( Para )
 {
 }
 //重载正方形求面积的方法
 public override double Area( )
 {
 return ParaVal * ParaVal;
 }
}
//图形的子类等边三角形
public class EqTriangle : Graph
{
 public EqTriangle( double Para ) : base ( Para )
 {
 }
 //重载等边三角形求面积的方法
 public override double Area()
 {
 return ParaVal * ParaVal * Math.Sin( pi/3 ) / 2;
 }
}
//图形的子类圆
public class Circle : Graph
{
 public Circle( double Para ) : base( Para )
 {
 }
 //重载圆求面积的方法
 public override double Area( )
 {
 return pi * ParaVal * ParaVal;
 }
}
class Test
{
 public static void Main( )
 {
 double Length = 6;

 Graph Init = new Graph( Length );
 Graph Squa = new Square( Length );
 Graph Tria = new EqTriangle( Length );
 Graph Circ = new Circle( Length );
 Console.WriteLine("原始图形的面积是:\t{0}", Init.Area());
 Console.WriteLine("正方形的面积是:\t{0}", Squa.Area());
 Console.WriteLine("等边三角形的面积是:\t{0}", Tria.Area());
 Console.WriteLine("圆形的面积是: \t{0}", Circ.Area());
 }
}

你可能感兴趣的:(C#虚方法的声明和使用实例教程)