⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 decorator2.java

📁 郭克华j2ee高级框架实战教学视频源代码 这个是比较值得一看的 由郭克华博士在总结多年Java培训的基础上
💻 JAVA
字号:
/*
单向适配器模式是在主模块上接入一个扩展模块,用继承法
优势:能够很好的应付扩展模块的切换
但是它有缺陷:扩展模块无法很好的应付主模块的切换
问题类比:Convert为ReadStrFromFile服务,以后又要为ReadStrFromNet服务
用单向适配器模式,就必须为ReadStrFromNet编写子类,很麻烦
*/
//装饰模式要点:主模块接口注入扩展模块

interface IRead{
	public abstract void read();
	}
class ReadStrFromFile implements IRead{//主模块
	public void read(){
		System.out.println("从文件读取字符串");
		}
	}
	
class ReadStrFromNet implements IRead{//主模块
	public void read(){
		System.out.println("从网络读取字符串");
		}
	}	

//装饰模式
class Convert{//扩展模块,可以用Spring装配,可以为任何实现了IRead接口的类服务
	private IRead iread;
	public Convert(IRead iread){
		this.iread = iread;
		}
	public void convertToUpper(){
		iread.read();
		System.out.println("转大写字母");
		}
	}


public class Decorator2{//客户端,最终使用方
	public static void main(String args[]){		

		Convert convert = new Convert(new ReadStrFromNet());
		convert.convertToUpper();
		}
	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -