zoukankan      html  css  js  c++  java
  • 重构9-Extract Interface(提取接口)

    我们来介绍一个常常被忽视的重构:提取接口。如果你发现多于一个类使用另外一个类的某些方法,引入接口解除这种依赖往往十分有用。该重构实现起来非常简单,并且能够享受到松耦合带来的好处。

    public class ClassRegistration{
    public Double Total;//getter setter
    public void Create() {
    // create registration code
    }
    public void Transfer () {
    // class transfer code
    }
    }
    public class RegistrationProcessor {
    public Double ProcessRegistration(ClassRegistration registration) {
    registration.Create();
    return registration.Total;
    }
    }
    在下面的代码中,你可以看到我提取出了消费者所使用的两个方法,并将其置于一个接口中。现在消费者不必关心和了解实现了这些方法的类。我们解除了消费者与实际实现之间的耦合,使其只依赖于我们创建的契约。
    public interface IClassRegistration{ 
    void Create();
    Double Total=0d;//
    }
    public class ClassRegistration extends IClassRegistration{
    public void Create(){
    // create registration code
    }
    public void Transfer(){
    // class transfer code
    }
    public Double Total;//getter setter
    }
    public class RegistrationProcessor{
    public Double ProcessRegistration(IClassRegistration registration) {
    registration.Create();
    return registration.Total;
    }
    }
     





  • 相关阅读:
    Oracle数据类型
    Windows10安装node.js,vue.js以及创建第一个vue.js项目
    Redis Desktop Manager安装
    VMware安装Linux系统
    前端入门学习路线
    架构
    HTML
    Oracle修改表类型方法
    Python学习
    Python(字符串和编码)
  • 原文地址:https://www.cnblogs.com/jgig11/p/5786319.html
Copyright © 2011-2022 走看看