zoukankan      html  css  js  c++  java
  • 随便写点什么

      1 /// <summary>
      2     /// 业务经理
      3     /// </summary>
      4     public class Manager
      5     {
      6         private static Manager _singleManager;
      7         private Manager()
      8         {
      9         }
     10         public static Manager GetSingelManager()
     11         {
     12             if (_singleManager == null)
     13                 _singleManager = new Manager();
     14             return _singleManager;
     15         }
     16         public void UpLevel(User user)
     17         {
     18             if (user.Key.UserType == CardType.Gold)
     19             {
     20                 Console.WriteLine(user.UserName + ":已经是Gold用户");
     21                 return;
     22             }
     23             user.Key.UserType += 1;
     24             Console.WriteLine(user.UserName + ":升级为" + user.Key.UserType);
     25         }
     26         public void DownLevel(User user)
     27         {
     28             if (user.Key.UserType == CardType.Gold)
     29             {
     30                 user.Key.UserType -= 1;
     31                 Console.WriteLine(user.UserName + ":已经降级为" + user.Key.UserType);
     32                 return;
     33             }
     34             Console.WriteLine(user.UserName + ":已经是最低" + user.Key.UserType + "用户");
     35         }
     36     }
     37     /// <summary>
     38     /// 卡片类型
     39     /// </summary>
     40     public enum CardType
     41     {
     42         Sliver,
     43         Gold,
     44     }
     45     /// <summary>
     46     /// 用户key
     47     /// </summary>
     48     public class Key
     49     {
     50         public CardType UserType { get; set; }
     51         public string SoleString { get; private set; }//Key的唯一标识
     52         public Key(CardType e, string soleString)
     53         {
     54             UserType = e;
     55             SoleString = soleString;
     56         }
     57         public override string ToString()
     58         {
     59             return UserType+":"+SoleString;
     60         }
     61     }
     62     /// <summary>
     63     /// 用户获取、提交数据要实现的接口
     64     /// </summary>
     65     public interface IMyDataInterFace
     66     {
     67         string GetData();//获取数据
     68 
     69         bool PostData(string message);//提交数据
     70     }
     71     /// <summary>
     72     /// 用户类
     73     /// </summary>
     74     public class User : IMyDataInterFace
     75     {
     76         public Key Key { get; private set; }
     77         public string UserName { get; private set; }
     78         public MyServer Server { get; private set; }
     79         /// <summary>
     80         /// 初始化用户,绑定服务器
     81         /// </summary>
     82         /// <param name="key"></param>
     83         /// <param name="userName"></param>
     84         /// <param name="server"></param>
     85         public User(Key key, string userName,MyServer server)
     86         {
     87             Key = key;
     88             UserName = userName;
     89             this.Server = server;
     90         }
     91         public string GetData()
     92         {
     93             return Server.GetMessage(Key);
     94         }
     95         public bool PostData(string message)
     96         {
     97             if (Server.PostMessge(Key, message))
     98             {
     99                 Console.WriteLine("成功提交数据");
    100                 return true;
    101             }
    102             Console.WriteLine("提交数据失败");
    103             return false;
    104         }
    105     }
    106     /// <summary>
    107     /// 服务类
    108     /// </summary>
    109     public class MyServer
    110     {
    111         private static MyServer _SingleServer;
    112         public  Dictionary<Key, string> Dictionary { get; private set; }
    113         private MyServer()
    114         {
    115         }
    116         public static MyServer GetSingleServer()
    117         {
    118             if (_SingleServer==null)
    119                 _SingleServer=new MyServer {Dictionary = new Dictionary<Key, string>()};
    120             return _SingleServer;
    121         }
    122 
    123         public string GetMessage(Key key)
    124         {
    125             var result = string.Empty;
    126             try
    127             {
    128                 if(key.UserType==CardType.Gold)
    129                    result ="GoleUser:"+ Dictionary[key];
    130                 else
    131                 {
    132                     result = "SliverUser:" + Dictionary[key];
    133                 }
    134                 return result;
    135             }
    136             catch (Exception)
    137             {
    138                 Console.WriteLine(key+"->不存在");//怎么返回key对应的用户
    139                 return null;
    140             }
    141             
    142         }
    143         public bool PostMessge(Key key, string message)
    144         {
    145             try
    146             {
    147                 Dictionary[key] = message;
    148                 return true;
    149             }
    150             catch (Exception)
    151             {
    152                 return false;
    153             }
    154         }
    155     }
    156     class Program
    157     {
    158         static  void Main(string[] args)
    159         {
    160             var server = MyServer.GetSingleServer();
    161             var manager = Manager.GetSingelManager();
    162 
    163             var key=new Key(CardType.Gold,"33520");
    164             var user1 = new User(key, "张三",server);
    165             
    166             var postSuccess=user1.PostData("hello");
    167             Console.WriteLine(user1.GetData()); 
    168 
    169             manager.DownLevel(user1);
    170             Console.WriteLine(user1.Key.UserType); 
    171 
    172         }
    173     }
  • 相关阅读:
    使用C++调用并部署pytorch模型
    相位展开(phase unwrapping)算法研究与实践
    【计算机视觉】图像配准(Image Registration)
    读书笔记 - 《数字图像处理》(更新中...)
    ssh框架复习
    SVN 版本控制
    Spring的jdbcTemplate 与原始jdbc 整合c3p0的DBUtils 及Hibernate 对比 Spring配置文件生成约束的菜单方法
    JDK 动态代理 讨债实例
    Spring 框架配置web.xml 整合web struts
    Spring整合JUnit spring静态对象属性的注入
  • 原文地址:https://www.cnblogs.com/foreveryt/p/4062453.html
Copyright © 2011-2022 走看看