抽象方法演练
2008-01-18 09:52
148 查看
using System;
abstract class Employee //定义抽象类
...{
protected string _name;//只被本类或派生类访问
protected Employee()//默认构造函数
...{
}
protected Employee(string name)//带一个参数的构造函数
...{
_name = name;
}
abstract public void strartWork();//抽象方法
}
class Manager : Employee
...{
public Manager(string name): base(name)//指定构造函数
...{ }
public override void strartWork()//重写基类虚方法
...{
Console.WriteLine(_name+"给员工下达任务");
}
}
class xs : Employee
...{
public xs(string name):base(name)//指定构造函数
...{ }
public override void strartWork()
...{
Console.WriteLine(_name + "销售产品");
}
}
class ms : Employee
...{
public ms(string name) : base(name)//指定构造函数
...{ }
public override void strartWork()
...{
Console.WriteLine(_name + "经理助理");
}
}
class kj : Employee
...{
public kj(string name) : base(name)//指定构造函数
...{ }
public override void strartWork()
...{
Console.WriteLine(_name + "财务核算");
}
}
class Test
...{
static void Main()
...{
Employee [] emp =new Employee[4];//并没有实例化Employee抽象类,而是建立了一个Employee类型的数组,new的是数组
emp[0]=new Manager("张三");
emp[1]=new xs("李四");
emp[2]=new ms("王五");
emp[3]=new kj("赵六");
Console.WriteLine("上午8点开始工作:");
foreach(Employee e in emp)
...{
e.strartWork();
}
}
}
相关文章推荐
- 抽象方法的成员方法,成员变量abstract的使用,以及其概述
- 抽象工厂 工厂方法
- 设计模式:简单工厂、工厂方法、抽象工厂之小结与区别
- 虚方法【仅仅有虚方法或者抽象方法才干被子类方法重写】
- C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例
- 抽象方法与虚方法
- 面向对象(1)-虚方法与抽象方法
- 从IL代码来探讨C#中的接口方法、虚方法与抽象方法
- JAVA之抽象类与抽象方法
- Java枚举抽象方法实战
- 抽象方法的调用问题
- PHP面向对象之旅:抽象方法
- 抽象方法可否同时是static,native,synchronized
- C#类和接口、虚方法和抽象方法及值类型和引用类型的区别 - 爱月眠迟 - 博客园
- 设计模式:简单工厂、工厂方法、抽象工厂之小结与区别
- Java中一个类怎么实现两个接口中相同名字的抽象方法
- 抽象工厂方法
- Android studio快捷键重写继承父类的抽象方法
- C#设计模式:抽象工厂方法模式
- PHP 抽象方法与抽象类abstract关键字介绍及应用