class1.cs

来自「ASP.NET动态网站开发基础教程(C#)光盘素材的开发示例」· CS 代码 · 共 92 行

CS
92
字号
using System;

namespace override_demo
{
	/// <summary>
	/// Class1 的摘要说明。
	/// </summary>
	class Class1
	{

		public class Shape 
		{
			public const double pi = Math.PI;
			protected double x, y;
			public Shape() 
			{
			}
			public Shape (double x, double y) 
			{
				this.x = x;
				this.y = y;
			}

			public virtual double GetArea() 
			{
				return x*y;
			}
		}

		public class Circle: Shape 
		{
			public Circle(double r): base(r, 0) 
			{
			}

			public override double GetArea() 
			{ 
				return pi * x * x; 
			}
		}

		class Sphere: Shape 
		{
			public Sphere(double r): base(r, 0) 
			{
			}

			public override double GetArea()
			{
				return 4 * pi * x * x; 
			}
		}

		class Cylinder: Shape 
		{
			public Cylinder(double r, double h): base(r, h) 
			{
			}

			public override double GetArea() 
			{
				return 2*pi*x*x + 2*pi*x*y; 
			}
		}


		/// <summary>
		/// 应用程序的主入口点。
		/// </summary>
		[STAThread]
		static void Main(string[] args)
		{
			//
			// TODO: 在此处添加代码以启动应用程序
			//

			double r = 4.0, h = 15.0;
			Shape c = new Circle(r);
			Shape s = new Sphere(r);
			Shape l = new Cylinder(r, h);
			
			//显示面积
			Console.WriteLine("圆的面积是 {0:F2}", c.GetArea());
			Console.WriteLine("球的面积是 {0:F2}", s.GetArea());
			Console.WriteLine("圆柱的面积是 {0:F2}", l.GetArea());

			Console.WriteLine("\n\n按回车键退出");
			Console.ReadLine();
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?