设计模式之面向对象

xiaoxiao2021-02-28  133

面向对象思想的建立 封装 隐藏实现的一些细节,提供一种公共的访问方式。 private来把一些成员变量和成员方法给隐藏起来。 继承 可以具备某些已经存在的功能。 多态 对象在不同时刻体现的不同的状态。 List list = new ArrayList(); list = new LinkedList(); 设计思想的区别: 抽象类:是对一组具有相同的属性和方法的在逻辑上有关系的一种抽象。 is a的关系。 接口:对一组具有相同的属性和方法的在逻辑上不相关的事物的一种抽象。 like a的关系。 举例: 人,学生,老师 面向对象设计的几个基本的原则 A:单一职责 系统中的每一个对象应该只有一个单独的职责,所有对象关注的应该是自身职责的完成。 基本思想:高内聚,低耦合。 B:开闭原则 一个对象对扩展开放,对修改关闭。 基本思想:对类的改动是通过增加代码进行的,而不是修改现有的代码。 C:里氏替换原则 在任意父类出现的地方,都可以使用子类来替代。 D:依赖注入原则 要依赖于抽象,不要依赖于具体的实现。 基本思想:在开发中尽量的面向接口编程。 E:接口分离原则 不要去使用一些不需要使用的功能。 基本思想:一个接口不要提供太多的行为。 F:迪米特原则 一个对象对其他的对象应该尽可能少的了解。 基本思想:降低耦合。 G:优先使用组合而不是继承原则 基本思想:在复用对象的时候,要优先考虑组合,而不是继承。因为父类的任何改变都可能直接音响子类的行为。 设计分类 创建型模式:创建对象。 结构行模式:对象的组成及对象的关系。 行为型模式:对象的行为。对象能够做什么。 创建型模式 简单工厂模式 工厂方法模式  Java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例、饿汉式单例、   单例模式有以下特点:   1、单例类只能有一个实例。   2、单例类必须自己创建自己的唯一实例。   3、单例类必须给所有其他对象提供这一实例。 一、懒汉式单例 [java] view plain copy print? //懒汉式单例类.在第一次调用的时候实例化自己     public class Singleton {       private Singleton() {}       private static Singleton single=null;       //静态工厂方法        public static Singleton getInstance() {            if (single == null) {                  single = new Singleton();            }             return single;       }   }   二、饿汉式单例 //饿汉式单例类.在类初始化时,已经自行实例化    public class Singleton1 {       private Singleton1() {}       private static final Singleton1 single = new Singleton1();       //静态工厂方法        public static Singleton1 getInstance() {           return single;       }   }   饿汉式在类创建的同时就已经创建好一个静态的对象供系统使用,以后不再改变,所以天生是线程安全的。
转载请注明原文地址: https://www.6miu.com/read-28219.html

最新回复(0)