zoukankan      html  css  js  c++  java
  • C# interface编程应用浅析

    针对C# interface编程能帮助达到面向对象开发和设计中"低耦合"的要求.举个例子:某公司有一台特殊打印机,还可以使用一年,一年后可能换为另一种打印机,这两种打印机都特殊而贵.所以现在的程序希望换了打印机后也少量修改就可用.

    C# interface实现方法:

    1,定义一个打印机接口.

    2,定义打印机类A,B,分别实现此接口.

    3,定义一个工厂类,在类中可选择返回由A实现的接口,或者由B实现的接口.

    4,在程序中使用打印机时,就可以使用工厂类来调用打印机,而不需要知道具体的是什么打印机.

    如果打印机换了,只需要修改工厂类就行了.如果有一千个地方都调用过打印机,就不需要一个一个修改.修改一个地方就行了.接口充当一个隔离层的作用.

    1. //定义打印机接口
    2. interface Iprint
    3. {
    4. bool PrintData(string data);
    5. }
    6. //定义打印机类A,实现接口,(继承)
    7. class PrintA:Iprint
    8. {
    9. public virtual bool PrintData(string data)
    10. {
    11. //具体业务逻辑略
    12. }
    13. }
    14. 定义打印机类B,实现接口,(继承)
    15. class PrintB:Iprint
    16. {
    17. public virtual bool PrintData(string data)
    18. {
    19. //具体业务逻辑略
    20. }
    21. }
    22. //定义工厂类
    23. class PrintFactory{
    24. public Iprint CreatePrint()
    25. {
    26. //返回一个由打机类A,或B实现的接口,比如
    27. return new PrintA();
    28. }
    29. }
    30. //通过工厂类,调用打印机
    31. private void button1_Click(object sender,Event Argse)
    32. {
    33. PrintFactory myFactory=new PrintFactory();
    34. Iprint myPrint=myFactory.CreatePrint();
    35. myPrint.PrintData("这样做很方便啊");
    36. }
  • 相关阅读:
    toj4119HDFS
    hdu2952Counting Sheep
    hdu2393Higher Math
    hdu2317Nasty Hacks
    hdu2309ICPC Score Totalizer Software
    hdu2304Electrical Outlets
    hdu2399GPA
    一、 软件测试概述
    JQuery选择器大全
    如何避免jQuery库和其他库的冲突
  • 原文地址:https://www.cnblogs.com/macavalier/p/3101669.html
Copyright © 2011-2022 走看看