package com.mode;
/*
接口中的方法尽量少。也就是说,我们要为各个类建立专用的接口,
而不要试图去建立一个很庞大的接口供所有依赖它的类去调用。
本例子中,将一个庞大的接口变更为3个专用的接口所采用的就是接口隔离原则。
采用接口隔离原则对接口进行约束时,要注意以下几点:
1.接口尽量小,但是要有限度。
2.为依赖接口的类定制服务,只暴露给调用的类它需要的方法,
它不需要的方法则隐藏起来。只有专注地为一个模块提供定制服务,
才能建立最小的依赖关系。
3.提高内聚,减少对外交互。使接口用最少的方法去完成最多的事情。
*/
interface I1 {
public void method1();
}
interface I2 {
public void method2();
public void method3();
}
interface I3 {
public void method4();
public void method5();
}
class A {
public void depend1(I1 i) {
i.method1();
}
public void depend2(I2 i) {
i.method2();
}
public void depend3(I2 i) {
i.method3();
}
}
class B implements I1, I2 {
public void method1() {
System.out.println("类B实现接口I1的方法1");
}
public void method2() {
System.out.println("类B实现接口I2的方法2");
}
public void method3() {
System.out.println("类B实现接口I2的方法3");
}
}
class C {
public void depend1(I1 i) {
i.method1();
}
public void depend2(I3 i) {
i.method4();
}
public void depend3(I3 i) {
i.method5();
}
}
class D implements I1, I3 {
public void method1() {
System.out.println("类D实现接口I1的方法1");
}
public void method4() {
System.out.println("类D实现接口I3的方法4");
}
public void method5() {
System.out.println("类D实现接口I3的方法5");
}
}
public class Client {
public static void main(String[] args) {
A a = new A();
a.depend1(new B());
a.depend2(new B());
a.depend3(new B());
C c = new C();
c.depend1(new D());
c.depend2(new D());
c.depend3(new D());
}
}
原文: http://blog.csdn.net/zhengzhb/article/details/7296921
分享到:
相关推荐
- 定期审查接口,确保它们仍符合 ISP 原则,随着项目的发展,可能需要重新调整接口设计。 接口隔离原则是软件设计中的一种良好实践,它有助于提高代码质量,降低维护成本,增强系统的可扩展性和可维护性。理解和...
接口隔离原则(Interface Segregation Principle,ISP)是C++中的一个重要设计原则,它旨在降低类之间的耦合性,提高系统的灵活性和可维护性。本文将详细介绍接口隔离原则的定义、优点、实现方法和应用实例。 定义 ...
接口隔离原则(Interface Segregation Principle,简称ISP)是软件设计中的一个重要原则,它在面向对象的设计模式中占有核心地位。这个原则由罗伯特·C·马丁(Robert C. Martin)在其著作《Clean Architecture》中...
接口与接口设计原则.doc
Dubbo服务接口设计原则 Dubbo服务接口的设计原则是基于Dubbo的分布式系统架构的关键组件,旨在提供高效、可靠、灵活的服务接口设计指南。Dubbo服务接口的设计原则可以分为三个方面:设计方式、接口类型和设计原则。...
1. **一致性**:接口设计应遵循一致性的原则,确保不同系统或模块之间能够基于统一的标准进行交互,减少集成时的不兼容问题。 2. **可维护性**:设计时应考虑到未来的维护和升级需求,接口应当易于理解、修改和扩展...
以下是一些关于C++类和接口设计的重要原则及其应用: 1. **单一功能原则**:每个类应专注于一个主要任务,提供单一服务。如果一个类试图完成多种功能,它应该被拆分为多个类,反之,如果多个类处理同一任务,可能...
在IT行业中,接口设计是软件开发过程中的关键环节,它涉及到不同系统、模块或服务之间的交互方式。"接口概要设计说"文档通常用于详细阐述这些接口的基本结构、功能和通信协议,为后续的详细设计和实现提供指导。以下...
接口与设计原则
"接口设计说明书模板详解" 在软件开发过程中,接口设计是非常重要的一步骤,它对整个项目的成功至关重要。一个良好的接口设计可以提高系统的可维护性、可扩展性和可重用性,而一个不良的接口设计则可能会导致项目的...
接口隔离原则提倡使用多个具体的接口代替一个庞大的接口,这样可以使客户端仅依赖它们需要的方法,从而降低系统的耦合度。 **具体方法:** - **建立最小的接口:** 应该根据需求创建尽可能小的接口,这样可以让依赖...
实现拥抱变化的方式很多,设计大师们为我们总结出23种设计模式,但是在项目实践中有效地使用设计模式是个难题,因此大部分业务设计很难采用它们来实现,我们在项目中尽量采用这六大设计原则,经常使用这些原则来检验...
5. **接口隔离原则(Interface Segregation Principle, ISP)**: - ISP主张接口应当保持小巧且专注,避免创建大而全的接口,因为客户端可能只需要其中的一部分方法。将接口拆分为更小的接口,可以让客户端只依赖...
面向对象设计原则概述 单一职责原则 开闭原则 里氏代换原则 依赖倒转原则 接口隔离原则 合成复用原则 迪米特法则
本文将深入探讨系统接口设计的各个方面,包括接口设计原则、接口定义与分类、接口设计模式以及接口实现方式。 首先,接口设计原则是指导接口设计的核心准则。高内聚、低耦合是设计中的金科玉律,旨在减少系统间的...
**趣图解析**:接口隔离原则的图解可能会展示多个小接口代替一个大接口的情形,每个客户端只需实现它所关心的接口。 ##### 5. 依赖倒置原则(Dependency Inversion Principle, DIP) **定义**:依赖倒置原则主张...
对面向对象设计原则的总结,设计模式:“开-闭”原则,里氏代换原则、依赖倒转原则、合成/聚合复用原则、迪米特法则、接口隔离原则
API接口设计原则 - **清晰性**:确保每个接口都有明确的功能描述,方便其他开发者理解其用途。 - **一致性**:保持接口命名、参数格式等的一致性,提高代码的可维护性和可读性。 - **安全性**:对于敏感操作(如...
- **防浪涌保护**:为了应对工业环境中的瞬时电压冲击,接口设计中需要加入浪涌保护器件,如压敏电阻或TVS二极管,以保护电路不受损害。 - **阻抗匹配**:确保信号在传输线上的有效传播,减少反射,提高信号质量。...