java解耦

耦合:在开发过程当中,一个模块严重依赖另一个模块,那么就说他们之间的耦合度较高,高耦合会严重影响代码的可维护性和可扩展性。

.
在这里插入图片描述

.

本案例解耦方法:接口+工厂类

1:创建接口

public interface demo {
 public void outstring(String s);
}

2:接口的实现类

实现类1
public class demoimp implements  demo{

	@Override
	public void outstring(String s) {
		System.out.println("demoimp:"+s );
		
	}

}
实现类2
public class demoimp2 implements demo{

	@Override
	public void outstring(String s) {
		System.out.println("demoimp2:"+s );
		
	}

}

3:创建工厂,本工厂使用了单例模式

public class demoFactory {
private demo de;
//单例
// 1. 私有的构造器-禁止在类的外部创建本类的实例
private demoFactory(){
	
	// 接口的具体实现类
	de=new demoimp2();
}
//2. 私有的静态的本类唯一实例-提供整个项目共同访问的那个实例
private static demoFactory factory=new demoFactory();
//3. 共有的静态的返回本类唯一实例的方法-供类的外部获取唯一实例
public static demoFactory getFactory(){
	return factory;
}
		
public demo getUserService(){
	
	return de;
}
}

4.具体的调用方法

public class test {
 public static void main(String[] args) {
	 //调用工厂
	 demoFactory df= demoFactory.getFactory();
	 //通过工厂获取接口的实体类
	 demo de= df.getUserService();
	 //调用实体类中的方法
	 de.outstring("de");
}
}
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值