码迷,mamicode.com
首页 > 其他好文 > 详细

重构9-Extract Interface(提取接口)

时间:2016-08-19 09:46:14      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:

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

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;
}
}
 





重构9-Extract Interface(提取接口)

标签:

原文地址:http://www.cnblogs.com/jgig11/p/5786319.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!