
原理
@ ^ @
...
展开
-
迪米特法则
问题案例/** * */package com.pro.princle.demeter;import java.util.ArrayList;import java.util.List;//客户端public class Demeter { public static void main(String[] args) { // 创建了一个 SchoolManager ...原创 2019-08-01 21:34:51 · 134 阅读 · 0 评论 -
合成复用原则
原创 2019-08-01 21:50:31 · 300 阅读 · 0 评论 -
UML基本介绍
原创 2019-08-01 22:23:26 · 85 阅读 · 0 评论 -
依赖关系,泛化关系,实现关系
只要在类中用到了对方,那么他们之间就存在依赖关系.如果没有对方,连编译都无法通过小结:类中用到了对方如作为类的成员属性如作为类的方法的返回值类型如作为方法接受的参数类型在方法中被使用到...原创 2019-08-01 23:10:39 · 2960 阅读 · 0 评论 -
聚合关系 组合关系
原创 2019-08-07 18:28:14 · 237 阅读 · 0 评论 -
哈希表
散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(H...原创 2019-07-15 09:11:21 · 129 阅读 · 0 评论 -
Java 的垃圾回收
什么是垃圾回收垃圾回收(Garbage Collection,GC),顾名思义就是释放垃圾占用的空间,防止内存泄露。有效的使用可以使用的内存,对内存堆中已经死亡的或者长时间没有使用的对象进行清除和回收。Java 语言出来之前,大家都在拼命的写 C 或者 C++ 的程序,而此时存在一个很大的矛盾,C++ 等语言创建对象要不断的去开辟空间,不用的时候又需要不断的去释放控件,既要写构造函数,又要写析...原创 2019-08-22 08:04:44 · 204 阅读 · 0 评论 -
Linux常用命令大全
最近都在和Linux打交道,感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。我将我了解到的命令列举一下,仅供大家参考:系统信息arch 显示机器的处理器架构uname -m 显示机器的处理器架构uname -r 显示正在使用的内核版本dmidecode -q 显示硬件系统部件 - (SMB...原创 2019-09-04 19:19:29 · 229 阅读 · 0 评论 -
单一职责原则
package com.pro.princle.singleresponsibility;public class SingleResponsibility1 { public static void main(String[] args) { Vehicle vehicle=new Vehicle(); vehicle.run("汽车"); vehicle.run("轮船")...原创 2019-07-30 22:50:21 · 129 阅读 · 2 评论 -
开闭原则
对提供方开放,对使用方关闭问题代码public class Ocp { public static void main(String[] args) { // 使用,发现存在的问题 GraphicEditor graphicEditor = new GraphicEditor(); graphicEditor.drawShape(new Rectangle()); gra...原创 2019-08-01 19:04:23 · 87 阅读 · 0 评论 -
里氏替换原则
问题代码/** * */package com.pro.princle.liskov;/** * @author kans * */public class Liskov { public static void main(String[] args) { A a = new A(); System.out.println("11-3="+a.func1(11,...原创 2019-08-01 18:29:50 · 159 阅读 · 0 评论 -
JDK 和 JRE 有什么区别?
1.下图是它们的直观区别,可从它们的面向对象、主要作用和组成部分三方面对比。其详细如下图所示:2.JDK就是Java Development Kit 的英文缩写。1). 主要面向开发人员。开发人员在软件开发时使用的SDK(Software Development Kit 一般指软件开发包),它提供了Java的开发环境和运行环境。2). 如果你电脑安装了JDK,那么你不仅可以开发Java程序...转载 2019-07-04 09:45:21 · 241 阅读 · 0 评论 -
系统了解线程
https://baike.baidu.com/item/线程/103101?fromtitle=Thread&fromid=5156974&fr=aladdin转载 2019-07-16 19:08:13 · 94 阅读 · 0 评论 -
jvm
参见百度:https://baike.baidu.com/item/JVM/2902369?fr=aladdin原创 2019-07-10 16:20:03 · 176 阅读 · 0 评论 -
高内聚低耦合
简介编辑在软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准。划分模块的一个准则是高内聚低耦合。从模块粒度来看,高内聚:尽可能类的每个成员方法只完成一件事(最大限度的聚合); 低耦合:减少类内部,一个成员方法调用另一个成员方法。从类角度来看, 高内聚低耦合:减少类内部,对其他类的调用;从功能块来看 高内聚低耦合:减少模块之间的交互复杂度(接口数量,参数数据)即横向:类与类之间、模块与模块之...转载 2019-07-25 18:59:12 · 1105 阅读 · 0 评论 -
设计模式七大原则
单一职责原则接口隔离原则依赖倒转(倒置)原则里氏替换原则开闭原则迪米特发则合成复用原则原创 2019-07-30 22:57:32 · 99 阅读 · 0 评论 -
中缀表达式 前缀表达式 后缀表达式
中缀表达式(或中缀记法)是一个通用的算术或逻辑公式表示方法, 操作符是以中缀形式处于操作数的中间(例:3 + 4),中缀表达式是人们常用的算术表示方法。与前缀表达式(例:+ 3 4)或后缀表达式(例:3 4 +)相比,中缀表达式不容易被计算机解析,但仍被许多程序语言使用,因为它符合人们的普遍用法。与前缀或后缀记法不同的是,中缀记法中括号是必需的。计算过程中必须用括号将操作符和对应的操作数括起...原创 2019-08-04 08:16:13 · 1160 阅读 · 0 评论 -
接口隔离原则
未使用隔离/** * */package com.pro.princle.segregation;/** * @author kans * */public class Segregation { /** * @param args */ public static void main(String[] args) { }}interface I...原创 2019-07-31 22:09:57 · 161 阅读 · 0 评论 -
依赖倒转原则
问题代码/** * */package com.pro.princle.inversion;/** * @author kans * */public class DependecyInversion { public static void main(String[] args) { Person person = new Person(); person.re...原创 2019-07-31 22:59:35 · 160 阅读 · 0 评论 -
编译型语言与解释型语言区别
转自https://blog.youkuaiyun.com/GIRLDWH0715/article/details/70228553编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言就不用再进行翻译了。解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相对于编C/C++ 等都是编译型语言,而Java,C#等都是解释型语言。虽然Java程序在运行之前也有一个编译过程,但是并...转载 2019-07-04 09:27:37 · 137 阅读 · 0 评论