1-5java新特性和项目任务一

发布于:2023-01-04 ⋅ 阅读:(329) ⋅ 点赞:(0)

任务一:常用的设计原则和设计模式

软件开发的流程

需求分析文档、概要设计文档、详细设计文档、编码和测试、安装和调试、维护和升级

开闭原则和里式替换原则

依赖倒装原则和接口隔离原则

迪米特法则和合成复用原则

当前类想要调用其他类中的方法,则可以在当前类中声明一个其他类的引用,用构造方法进行初始化,引用.方法名即可实现。

设计模式的概念和分类

懒汉式的线程同步实现

懒汉式单例设计模式会存在get方法去进行new对象时的一个线程问题,当第一个线程未结束时,即第一个对象还未new完返回,第二个对象就在创建了,两个对象的存在不符合单例,所以需将线程问题进行同步处理

添加synchronized关键字去修饰方法,将线程“锁"起来,也等同于synchronized(方法名.class)静态代码块。

懒汉式的线程同步优化

添加if进行判断当前对象是否为null值,仅对创建对象的代码进行加锁处理,不用每一次线程运行都进行加锁解锁,大大地提高了而效率。

普通工厂模式的概念和实现

实现借口,自定义抽象方法

自定义发邮件类实现借口,重写send方法。

自定义发短信类实现借口,重写send方法。

写一个工厂类,实现创建对象的方法。produce()返回值为sender,实现了多态。

写测试类,声明工厂类指向工厂类型的引用,调用生产方法来创建对象,使用对象调用方法来模拟发生的行为。

普通工厂模式的意义

多个工厂方法模式的实现

把一个produce方法变成两个produce方法去进行创建对象。

静态工厂方法模式的实现

静态方法模式,将方法前加上static关键字,即可通过类名.方法去调用,省去创建对象的这一步。

抽象工厂模式的实现

由一个生产类中的两个生产方法转变为两个生产类。

定义一个抽象方法来描述生产行为

两个生产类重写各自的生产方法

声明生产类的引用指向生产类的对象,创建生产对象,使用类命.方法名去调用,然后调用生产方法。

抽象工厂模式扩展的优势

添加新的类,进行扩展,不用在原有的代码基础上进行修改添加。

新建工厂类进行实现借口,重写方法。

完成对象的创建和方法调用。

装饰器模式的实现

需要对类的功能进行新功能的添加实现,且保证原有功能不变,则进行装饰类的编写

代理模式的实现

注意两个模式不同的构造方法,装饰器模式是将原始对象作为一个参数来进行传递,而代理模式是直接创建一个新的对象。

模板方法模式的实现

将多个子类中逻辑相同的提取出来为抽象类中的方法,通过多态的方式来实现不同子类的效果。

任务总结

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到