仅为作业记录!!
定义一个Shape抽象类,在该类中定义两个抽象方法GetArea和GetPerim。然后以Shape抽象类作为基类派生出Rectangle和Circle类,在这两个类中分别对GetArea和GetPerim方法进行重写,实现求特定形状的面积和周长。
using System;
namespace Figure
{
public abstract class Shape
{
public abstract double GetArea();//面积
public abstract double GetPerim();//周长
}
public class Rectangle : Shape//长方形
{
protected double length,width;
public Rectangle(double length,double width)
{
this.length = length;
this.width = width;
}
public override double GetArea()//重写方法,加override关键字
{
return length * width;
}
public override double GetPerim()//重写方法,加override关键字
{
return (length + width) * 2;
}
}
public class Circle : Shape//圆形
{
protected double d;
public Circle(double d)
{
this.d = d;
}
public override double GetArea()//重写方法,加override关键字
{
return 3.14 * d/2 * d/2;
}
public override double GetPerim()//重写方法,加override关键字
{
return 3.14 * d;
}
}
}
主程序========
using System;
using System.Collections.Generic;
using System.Text;
namespace Figure
{
class Class1
{
public static void Main(string[] args)
{
Rectangle re = new Rectangle(8,5);
Circle ci = new Circle(8);
Console.WriteLine("长方形的面积是:{0}\n长方形的周长是:{1}\n", re.GetArea(), re.GetPerim());
Console.WriteLine("圆形的面积是:{0}\n圆形的周长是:{1}\n", ci.GetArea(), ci.GetPerim());
}
}
}
运行截图=====