第3个回答 推荐于2016-05-27
你说错了,C#中的抽象类,不是可以重写,而是必须重写
至于Interface,个人理解它的方法也是一种重写,但不加override
如下
public interface GongShi
{
int area();
int length();
}
public interface Print
{
void say();
}
public class Example:GongShi,Print
{
private int _sides;
public int Sides
{
get { return _sides; }
set { _sides = value; }
}
//--正方形
public int area() //这儿其实也就是重写接口中的方法了,但没关键字override
{
return this._sides *this._sides ;
}
public int length()//这儿也是
{
return 4*this._sides ;
}
public void say() //这儿还是
{
Console.WriteLine("正方形的面积为:{0}",this.area());
Console.WriteLine("正方形的周长为:{0}",this.length());
}
}
class Program
{
static void Main(string[] args)
{
Example ex = new Example(); //调用仍从“继承类”调用接口中的方法
ex.Sides = 5;
ex.say ();
}
}本回答被提问者采纳