Kotlin设计模式:Java中的桥接模式与中介模式
abstract class AbsCls {abstract fun setFlag(f: Int)abstract fun getFlag(): Int
}class ACls : AbsCls {private var flag = 0constructor() {println("ACls constructor")}override fun setFlag(f: Int) {println("ACls setFlag $f")flag = f + 1}override fun getFlag(): Int {println("ACls getFlag $flag")return flag}
}class MyCls : AbsCls {private var aCls: AClsconstructor(cls: ACls) {aCls = clsprintln("MyCls constructor")}override fun setFlag(f: Int) {aCls.setFlag(f)}override fun getFlag(): Int {return aCls.getFlag()}
}fun main() {val aCls = ACls()val myCls = MyCls(aCls)myCls.setFlag(2024)println(myCls.getFlag())
}
ACls constructor
MyCls constructor
ACls setFlag 2024
ACls getFlag 2025
2025
Java设计模式:桥接模式解决的架构设计痛点_java项目的架构和技术的痛点-CSDN博客文章浏览阅读339次。现象痛点:现在创建一个工厂,工厂的日常运行是生产和销售。如:public abstract class Factory { /** * 生产 */ public abstract void produce(); /** * 销售 */ public abstract void sell(); /** ..._java项目的架构和技术的痛点https://zhangphil.blog.csdn.net/article/details/92838730Java设计模式:桥梁模式解决的痛点例子(2)_桥梁模式解决的问题-CSDN博客文章浏览阅读441次。通常情况一台电视机配置一种对应的遥控器,但是这种情况下,每当有一种新的电视机后,就不得不增加一种新的遥控器。因为电视机模块在变化,遥控器模块中控制逻辑相对文档。现在引入Java设计模式中的桥接模式,解决这种情况。public interface TV { void on(); void off(); void setChannel(int number);}..._桥梁模式解决的问题https://zhangphil.blog.csdn.net/article/details/93181404
Java设计模式:中介模式_中介模式 java-CSDN博客文章浏览阅读319次。public interface Mediator {void createMediator();void workAll();}//中介。public class MyMediator implements Mediator {private User user1;private User user2;@Overridepublic void crea..._中介模式 javahttps://zhangphil.blog.csdn.net/article/details/88743967