• 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html
  • 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html

标签:面向对象

面象对象设计6大原则之四:接口隔离原则

接口隔离原则(ISP),The Interface Segregation Principle定义客户端不需要强迫依赖那些它们不需要的接口。类与接口的依赖应该建议在最小的接口上,也就是说接口应该最小化,不能建立在一个庞大的接口之上,接口合理地按功能职能分成更细的几个单一的子接口。如果一个接口定义并公布过多的方法,会导致所有的……

面象对象设计6大原则之二:开放封闭原则

开放封闭原则(OCP),The Open Closed Principle定义一个软件的实体,包括类、方法、模块、应该对扩展开放,对修改关闭。也就是说一个软件的实体应该通过扩展的方式来修改变化,而不是修改已有实体源代码。开放封闭原则也是最基本需要遵守的原则,我们应该尽量保证系统的稳定性,我们在实现另外一个功能的时候不能修改之……

面象对象设计6大原则之一:单一职责原则

单一职责原则(SRP),The Single Responsibility Principle定义一个类的修改只能有一个被修改的原因。通俗地讲,就是一个类只能负责一个职责,修改一个类不能影响到别的功能,也就是说只有一个导致该类被修改的原因。我们写代码的都知道尽量要做到低耦合、高内聚的特性,单一职责原则正是保证了类与类之间的低耦……

面象对象设计6大原则之三:里氏替换原则

里氏替换原则(LSP),The Liskov Substitution Principle定义所有引用基类的地方必须能透明地引用其子类的对象,即子类可以拓展父类的功能,但不能修改父类已有的功能。也就是说在父类出现的地方子类也可以出现,并且替换为子类也不会报错,引用者根本不需要知道引用的是父类还是子类,但是反过来就行不通了,子类……

面象对象设计6大原则之六:迪米特原则

迪米特原则(LOD),The Law Of Demeter,也称为最少知识原则定义一个对象应该对其他对象有最少的了解。也就是说一个类耦合和调用一个类应该知道的最少,它只关心被耦合和调用的类的公共方法,而被耦合和调用的类如何复杂它并不关心。这在另一程度也说明类方法的最小权限性,不要随意定义public公开方法,你只公开你需要公开的……

面象对象设计6大原则之五:依赖倒置原则

依赖倒置原则(DIP),The Dependency Inversion Principle定义1、高层模块不应该依赖低层模块,两都应该依赖于抽象。2、抽象不依赖于具体细节。3、具体细节应该依赖于抽象。抽象就是指接口或者抽象类,细节是指实现接口或者抽象类的具体实现类。也就是说模块之间的依赖通过接口或抽象发生的,两个实现细……

Java基础知识随笔(四)设计模式

设计模式设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结设计模式是软件开发人员在软件开发过程中面临的一半问题的解决方案项目汇总合理的运用设计模式可以完美的解决很多问题每种模式在现在中都有相应的原理来与之对应每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案面向对象的……

Java基础知识随笔(三)继承

生活中的继承孩子像老王富二代师徒关系程序中的继承继承特点:1、利于代码复用2、缩短开发周期一种类与类之间的关系使用已存在的类的定义作为基础建立新类新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性的继承父类父类:基类子类:派生类继承的关系满足“A is a B”的关系就可以形成继承关系如:猫、狗是动物……

Java基础知识随笔(二)封装

封装将类的某些信息隐藏在类的内部,不允许外部程序直接访问通过该类提供的方法来实现对隐藏信息的操作和访问隐藏对象的信息留出访问的接口特点:1、只能通过规定的方法访问数据2、隐藏类的实例细节,方便修改和实现包作用:1、管理java文件2、解决同名文件冲突定义包语法:package 包名;例:package com.jikewenk……

Java基础知识随笔(一)面向对象

什么是对象万物皆对象、客观存在的事物对象:用来描述客观事物的一个实体,由一组属性和方法构成类类是模子,确定对象将会拥有的特征(属性)和行为(方法)类的特点 类是对象的类型 具有相同属性和方法的一组对象的集合什么是对象的属性和方法属性:对象具有的各种静态特征“有什么”方法:对象具有的各种动态行为“能做什么”类和对象的……

设计模式(五)抽象工厂模式

意图提供一个接口,用于创建 **相关的对象家族** 。类图抽象工厂模式创建的是对象家族,也就是很多对象而不是一个对象,并且这些对象是相关的,也就是说必须一起创建出来。而工厂模式只是用于创建一个对象,这和抽象工厂模式有很大不同。抽象工厂模式用到了工厂模式来创建单一对象,AbstractFactory 中的 createProductA 和 creat……

设计模式(四)工厂方法模式

意图定义了一个创建对象的接口,但由子类决定要实例化哪个类。工厂方法把实例化推迟到子类。类图在简单工厂中,创建对象的是另一个类,而在工厂方法中,是由子类来创建对象。下图中,Factory 有一个 doSomethind() 方法,这个方法需要用到一组产品对象,这组产品对象由 factoryMethod() 方法创建。该方法是抽象的,需要由子类去实现。……

设计模式(三)简单工厂

意图在创建一个对象时不向客户暴露内部细节;类图简单工厂不是设计模式,更像是一种编程习惯。它把实例化的操作单独放到一个类中,这个类就成为简单工厂类,让简单工厂类来决定应该用哪个子类来实例化。这样做能把客户类和具体子类的实现解耦,客户类不再需要知道有哪些子类以及应当实例化哪个子类。因为客户类往往有多个,如果不使用简单工厂,所有的客户类都要知道所有子类的……

设计模式(一)概述、单例模式

概述设计模式不是代码,而是解决问题的方案,学习现有的设计模式可以做到经验复用。拥有设计模式词汇,在沟通时就能用更少的词汇来讨论,并且不需要了解底层细节。意图确保一个类只有一个实例,并提供了一个全局访问点。类图使用一个私有构造函数、一个私有静态变量以及一个公有静态函数来实现。私有构造函数保证了不能通过构造函数来创建对象实例,只能通过公有静态函数返……

面向对象思想(三)类图

泛化关系 (Generalization)用来描述继承关系,在 Java 中使用 extends 关键字。实现关系 (Realization)用来实现一个接口,在 Java 中使用 implement 关键字。聚合关系 (Aggregation)表示整体由部分组成,但是整体和部分不是强依赖的,整体不存在了部分还是会存在。组合关系 (Comp……

面向对象思想(二)三大特性

封装利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体。数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保留一些对外接口使之与外部发生联系。用户无需知道对象内部的细节,但可以通过对象对外提供的接口来访问该对象。优点:– 减少耦合:可以独立地开发、测试、优化、使用、理解和修改– 减轻维护的……

面向对象思想(一)设计原则

 S.O.L.I.D1. 单一责任原则> 修改一个类的原因应该只有一个。换句话说就是让一个类只负责一件事,当这个类需要做过多事情的时候,就需要分解这个类。如果一个类承担的职责过多,就等于把这些职责耦合在了一起,一个职责的变化可能会削弱这个类完成其它职责的能力。2. 开放封闭原则> 类应该对扩展开放,对修改关闭。扩展就是……

  • 精品技术教程
  • 编程资源分享
  • 问答交流社区
  • 极客文库知识库

客服QQ


QQ:2248886839


工作时间:09:00-23:00