C# 对象多态性(OOP基础)
作者:C/S框架网  发布日期:2011/05/09 12:22:34
C# 对象多态性(OOP基础)

using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;

namespace CSFramework.Tech2011
{
   //汽车基类
   public class CarBase
   {
      public virtual void OpenDoor()
      {
         MessageBox.Show("普通汽车由两侧开门");
         } //打开车门
      }
      
      
      /// <summary>
      /// 马自达汽车III(马3)
      /// </summary>
      public class CarMazida3 : CarBase
      {
         public override void OpenDoor()
         {
            MessageBox.Show("马3汽车也是两侧开门");
         }
      }
      
      /// <summary>
      /// 跑车,凯迪拉克
      /// </summary>
      public class CarCadillac : CarBase
      {
         public override void OpenDoor()
         {
            MessageBox.Show("凯迪拉克跑车向上开门");
         }
      }
      
      public class vjsdn_override
      {
         //测试马自达汽车
         public void TestMazida()
         {
            CarBase car;
            
            car = new CarMazida3();
            car.OpenDoor();
         }
         
         //测试凯迪拉克
         public void TestCadillac()
         {
            CarBase car;
            car = new CarCadillac();
            car.OpenDoor();
         }
         
         //测试所有类型的汽车
         public void TestAllCar(CarBase car)
         {
            car.OpenDoor();
         }
      }
   }
   
   
上一篇 下一篇