//rect.cs 源文件用于定义矩形类和正方形类
using System;
namespace MyShape
{
public class Rectangle : Shape //定义矩形类
{
protected int a;
protected int b; //矩形的边长
public Rectangle(int va,int vb)
{
a = va;
b = vb;
}
public override int GetArea() //重载虚方法计算矩形面积
{
int area=a*b;
return area;
}
public override void Draw() //重载虚方法在屏幕上绘制矩形
{
Console.WriteLine("Rectangle:");
Console.WriteLine("* * * * *");
Console.WriteLine("* *");
Console.WriteLine("* *");
Console.WriteLine("* * * * *");
}
}
public class Square : Rectangle //定义正方形类
{
public Square(int va) : base(va,va)
{;}
public override void Draw() //重载绘制正方形
{
Console.WriteLine("Square");
Console.WriteLine("* * * * *");
Console.WriteLine("* *");
Console.WriteLine("* *");
Console.WriteLine("* *");
Console.WriteLine("* * * * *");
}
}
}
 其中: public Square(int va) : base(va,va)  这句什么意思哪?: base(va,va)  去了不是一样正确吗?它传给父类va,va值有什么用呢?比如我定义一个实例:Square zilei=new Square(1);达到了我给Square初始化的目的,: base(va,va) 传给父类VA值是什么意思????百思不得其解,请帮忙!!!