1面向對象ide
類:包含字段、屬性、函數、構造函數函數
字段:存儲數據spa
屬性:保護字段 get setcode
函數:描述對象的行爲對象
構造函數:初始化對象,給對象的每一個屬性賦值blog
面向對象的好處:讓程序具備擴展性get
類決定了對象將要擁有的屬性和行爲。string
namespace _07虛方法 { class Program { static void Main(string[] args) { //員工九點打卡 經理11點打卡 程序猿不打卡 // Employee emp = new Employee(); //// emp.DaKa(); // Manager m = new Manager(); // //m.DaKa(); // Programmer p = new Programmer(); // //p.DaKa(); // Employee e = m; //Employee[] emps = { emp, m, p }; //for (int i = 0; i < emps.Length; i++) //{ // //if (emps[i] is Manager) // //{ // // ((Manager)emps[i]).DaKa(); // //} // //else if (emps[i] is Programmer) // //{ // // ((Programmer)emps[i]).DaKa(); // //} // //else // //{ // // emps[i].DaKa(); // //} // emps[i].DaKa(); //} Employee emp = new Programmer();//new Manager(); //new Employee(); emp.DaKa(); Console.ReadKey(); } } class Employee { public virtual void DaKa() { Console.WriteLine("員工九點打卡"); } } class Manager : Employee { public override void DaKa() { Console.WriteLine("經理11點打卡"); } } class Programmer : Employee { public override void DaKa() { Console.WriteLine("程序猿不打卡"); } } }