编程学习网为您整理以下代码实例,主要实现:C#抽象和虚拟类,希望可以帮到各位朋友。
using System;
namespace polymorphismApplication {
class Shape {
protected int wIDth, height;
public Shape( int a = 0, int b = 0) {
wIDth = a;
height = b;
}
public virtual int area() {
Console.Writeline("Parent class area :");
return 0;
}
}
class Rectangle: Shape {
public Rectangle( int a = 0, int b = 0): base(a, b) {
}
public overrIDe int area () {
Console.Writeline("Rectangle class area :");
return (wIDth * height);
}
}
class Triangle: Shape {
public Triangle(int a = 0, int b = 0): base(a, b) {
}
public overrIDe int area() {
Console.Writeline("Triangle class area :");
return (wIDth * height / 2);
}
}
class Caller {
public voID CallArea(Shape sh) {
int a;
a = sh.area();
Console.Writeline("Area: {0}", a);
}
}
class Tester {
static voID Main(string[] args) {
Caller c = new Caller();
Rectangle r = new Rectangle(10, 7);
Triangle t = new Triangle(10, 5);
c.CallArea(r);
c.CallArea(t);
Console.ReadKey();
}
}
}
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!