C#虚方法的声明和使用实例教程
本文以实例形式演示了C#虚方法的声明与使用。实例内容主要包括:演示虚方法的声明和使用,定义虚方法进而求几何面积,用虚方法求原始图形的面积、正方形的面积、等边三角形的面积、圆形的面积等。
实现代码如下:
usingSystem; publicclassGraph { protecteddoubleParaVal; protecteddoublepi=3.1415926; publicGraph(doublePara) { ParaVal=Para; } //定义虚方法:求面积 publicvirtualdoubleArea() { returnParaVal; } } //图形的子类正方形 publicclassSquare:Graph { publicSquare(doublePara):base(Para) { } //重载正方形求面积的方法 publicoverridedoubleArea() { returnParaVal*ParaVal; } } //图形的子类等边三角形 publicclassEqTriangle:Graph { publicEqTriangle(doublePara):base(Para) { } //重载等边三角形求面积的方法 publicoverridedoubleArea() { returnParaVal*ParaVal*Math.Sin(pi/3)/2; } } //图形的子类圆 publicclassCircle:Graph { publicCircle(doublePara):base(Para) { } //重载圆求面积的方法 publicoverridedoubleArea() { returnpi*ParaVal*ParaVal; } } classTest { publicstaticvoidMain() { doubleLength=6; GraphInit=newGraph(Length); GraphSqua=newSquare(Length); GraphTria=newEqTriangle(Length); GraphCirc=newCircle(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()); } }