Java装饰器怎么写
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,这篇文章主要介绍了Java装饰器怎么写的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java装饰器怎么写文章都会有所收获,下面我们一起来看看吧。//// 模拟咖啡/
千家信息网最后更新 2025年01月31日Java装饰器怎么写
这篇文章主要介绍了Java装饰器怎么写的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java装饰器怎么写文章都会有所收获,下面我们一起来看看吧。
//// 模拟咖啡// 1.抽象组件:需要装饰的抽象对象(接口或者抽象父类)// 2.具体组件:需要装饰的对象// 3.抽象装饰类:包含了对抽象组件的引用以及装饰着共有的方法// 4.具体装饰类:被装饰的对象public class TestDecoretorTwo {public static void main(String[] args) {Drink coffee = new coffee();Drink suger = new Suger(coffee);System.out.println(suger.cost() + "--->" + suger.Info());Drink milk = new Milk(coffee);System.out.println(milk.cost() + "--->" + milk.Info());Drink milk1 = new Milk(suger);System.out.println(milk1.cost() + "--->" + milk1.Info()); }}// 1.抽象组件 interface Drink{int cost();String Info(); } // 2.具体组件: class coffee implements Drink{String name="原味咖啡";public int cost() {return 10; }@Override public String Info() {return name; } }// 3.抽象装饰类: class Decorate implements Drink{//对抽象组件的引用 private Drink drink;public Decorate(Drink drink) {//这里是一个构造器(this) this.drink = drink; }@Override public int cost() {return this.drink.cost(); }@Override public String Info() {return this.drink.Info(); } }// 4.具体装饰类1: class Milk extends Decorate{public Milk(Drink drink) {//这里是一个构造器,(super) super(drink); }@Override public int cost() {return super.cost()*4; }@Override public String Info() {return super.Info()+"加入了牛奶"; } }// 4.具体装饰类2: class Suger extends Decorate{public Suger(Drink drink) {super(drink); }@Override public int cost() {return super.cost()*2; }@Override public String Info() {return super.Info()+"加入了蔗糖"; } }
输出结果
20--->原味咖啡加入了蔗糖
40--->原味咖啡加入了牛奶
80--->原味咖啡加入了蔗糖加入了牛奶
关于"Java装饰器怎么写"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"Java装饰器怎么写"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。
组件
咖啡
原味
对象
牛奶
知识
蔗糖
内容
篇文章
构造器
价值
接口
操作简单
文章
方法
易懂
更多
看吧
结果
行业
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
兴化威力网络技术价格查询
网络安全法哪些涉及到刑法
技术支持数据库语句
出名大型生存服务器
交管123一直服务器异常
如何把服务器弄成游戏服务器
严谨的软件开发人员
沙迪克 数据库错误
苏州拔俗网络技术有限公司
多节点服务器管理器
java后台业务跟数据库拆分
excel中按行取数据库
phpredis数据库教程
网络技术班实习报告
迅网网络技术有限公司
opcua客户端无法连接服务器
弘业期货软件开发待遇
每年的网络安全周是什么时候
网络技术原理高清
数据库字典表怎么设置
关于网络安全的主体
服务器的主机怎么连电视
如何自动添加照片到数据库中
管理系统软件开发公司
网络安全产品出货量
大学数据库重修申请书范文
每年的网络安全周是什么时候
二进制图片存储数据库
数据库 一行数据内容排序
峰米投影仪服务器错误