using System;namespace PolymorphismApplication {class Shape {protected int width, height;public Shape( int a = 0, int b = 0) {
编程学习网为您整理以下代码实例,主要实现: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();
}
}
}
织梦狗教程
本文标题为:C#抽象和虚拟类
基础教程推荐
猜你喜欢
- C#正则表达式示例3 1970-01-01
- C#属性条件 1970-01-01
- C#计算字符串中元音和辅音的数量 1970-01-01
- C# if运算符 1970-01-01
- Dropbox-SDK-Dotnet:如何获取刷新令牌并更新访问令牌 2022-10-19
- C#数组声明 1970-01-01
- C# if...else语句 1970-01-01
- C#将二进制转换为十进制 1970-01-01
- C# abstract关键字 1970-01-01
- C# break语句 1970-01-01