在软件的设计中,通常软件的结构是相对固定的,但是子步骤是相对变化的,即算法的骨架是固定,实现延迟到子类中实现。
class Program { static void Main(string[] args) { VehicaltestFramework.DoTest(new HongqiCar()); } } // 框架开发者-先开发 public abstract class Vehical { // 这些方法可以实现或者是不实现,根据具体的应用 // 来决定。 public abstract void Startup(); public abstract void Run(); public abstract void Turn(int degree); public abstract void Stop(); public void Test() { this.Startup(); this.Run(); this.Stop(); } } class VehicaltestFramework { public static void DoTest(Vehical vehical) { vehical.Test(); } } // 应用程序开发人员-晚开发 class HongqiCar : Vehical { protected override void Startup() { } protected override void Run() { } protected override void Turn(int degree) { } public override void Stop() { } }
作者:许强1. 本博客中的文章均是个人在学习和项目开发中总结。其中难免存在不足之处 ,欢迎留言指正。 2. 本文版权归作者和博客园共有,转载时,请保留本文链接。
1. 本博客中的文章均是个人在学习和项目开发中总结。其中难免存在不足之处 ,欢迎留言指正。 2. 本文版权归作者和博客园共有,转载时,请保留本文链接。