zoukankan      html  css  js  c++  java
  • 关于《关于一道C#上机题的一点想法》

    看了《关于一道C#上机题的一点想法》和《泛型委托》两篇文章,深有感触,还是关于下面这道题:

    题目:17个人围成一圈,从第一个人开始报数,报到3的退出,一直到剩下最后一个人,用面向对象的思想去做这道题。

    前面两篇感觉上还是不够面向对象,至少要有面向对象三大特征:封装,继承,多态吧,
    第一篇仅是构建了一个双向循环链表数据结构,思想还是面向过程的。
    第二篇用到了泛型委托,但是思想和特定技术是不相关的,用到泛型委托未必就是面向对象啊。
    所以我也斗胆写了下这道题,请大家指教了:
    首先说明,这里用到了状态模式,单例模式,主要还是状态模式,实现了一个简单的状态机,
    先上图:

    再上代码:
     1 using System;
     2 using System.Collections.Generic;
     3 using System.Text;
     4 
     5 namespace Test
     6 {
     7     interface IPersonState
     8     {
     9        void Handle();
    10 
    11        void Handle(Person person);
    12    }
    13 }
    14 

    First

    Second

    Three

    Last

    Person

    PersonLink

    调用:
    Program

    运行结果:

    源代码:/Files/hongyin163/Test.rar

    不知道大家感觉怎样?

  • 相关阅读:
    Vue目录查询
    Vue框架学习(五)
    Vue框架学习(四)
    Vue框架学习(三)
    Vue框架学习(二)
    Vue框架学习(一)
    python中定义函数和参数的传递问题
    数据处理
    关于在程序中 文件新生成 在用os.system()程序对新生成的文件处理 举个栗子 如下:
    c++2008 并行配置文件和获取字典的所有key的方法
  • 原文地址:https://www.cnblogs.com/hongyin163/p/1555012.html
Copyright © 2011-2022 走看看