zoukankan      html  css  js  c++  java
  • C# 适配器模式(Adapter)

    理解:旧的接口不能被客户直接调用,需要第三方类进行转换。就好像USB转换器一样

    代码:

    using System.Windows.Forms;

    namespace DesignMode.Adatper
    {
        //原版英文电影
        public class Movie_English
        {
            public void PlayEnglish()
            {
                MessageBox.Show("英文电影");
            }
        }

        //观众要看的中文电影
        public class Movie_Chinese
        {
            public virtual void PlayChinese()
            {
                MessageBox.Show("中文电影");
            }
        }

        //继承放中文电影的接口
        public class Translate : Movie_Chinese
        {
            private Movie_English _english = new Movie_English();

            //虽然放的是英文电影,但观众调用的是播放中文的方法
            public override void PlayChinese()
            {
                _english.PlayEnglish();
            }
        }

    客户端代码:

            private void btn_Adapter_Click(object sender, EventArgs e)
            {
                //观众只需要告诉翻译者要看中文电影
                Translate translate = new Translate();
                translate.PlayChinese();} 
  • 相关阅读:
    WPF 自定义ComboBox样式,自定义多选控件
    .net core 的网站
    grpc详细入门
    如何遍历所有程序集中的成员、类
    【C#】IDispose接口的应用
    redis集群简介
    What’s your most controversial programming opinion?
    初学PHP——欲得生受用,须下死功夫!
    Great OOP
    博客园背景特效粒子鼠标跟踪吸附
  • 原文地址:https://www.cnblogs.com/kavilee/p/2374895.html
Copyright © 2011-2022 走看看