一、JML理论基础 1.概览 在概述JML之前我想我们应该首先了解契约式设计(Design by Contract, DbC)。DbC要求在软件程序设计时明确每一个模块单元在调用前后的状态变化,抽象出来就是要求明确前置条件、后置条件和不变式。和诸多设计模式一样,DbC可以说是一种方法学,一种软件开发 ...
分类:
其他好文 时间:
2020-05-21 19:02:25
阅读次数:
58
公司最近在招 Java 开发岗,居然一天内就收了几百份简历!想不到吧?! 都快面吐了,想招一个合适的技术同学太不容易了,需要去挖的细节太多了。 一般来说,很多人都会被问 JVM原理、多线程、数据结构和算法、高并发、设计模式等内容,这是在评估普通 Java 面试者的知识结构。 但!如果要面 P7 的技 ...
分类:
其他好文 时间:
2020-05-21 16:22:23
阅读次数:
123
一、迭代器(Iterator)的定义以及功能。 1.1、迭代器是一种检查容器内元素并遍历元素的数据类型。Iterator(迭代器)模式又称Cursor(游标)模式迭代器是一种设计模式。容器生成的迭代器用于遍历容器中的每个元素, 同时避免暴露容器的内部数据结构和实现细节。(注意:Adaptor在设计模 ...
分类:
其他好文 时间:
2020-05-21 14:50:28
阅读次数:
55
观察者,貌似在很多科幻作品中都会有这个角色的出现。比如我很喜欢的一部美剧《危机边缘》,在这个剧集中,观察者不停的穿越时空记录着各种各样的人或事。但是,设计模式中的观察者可不只是站在边上看哦,这里的观察者是针对主体发生的状态改变来做出对应的动作。 Gof类图及解释 GoF定义:定义对象间的一种一对多的 ...
分类:
其他好文 时间:
2020-05-21 10:18:02
阅读次数:
44
可能这份面试题还不足以包含所有Java问题,但有了它,我相信你一定不会“败”的很惨,有了它,足以应对目前市面上绝大部分的Java面试了,因为这些问题不论是从深度还是广度上来讲,都已经囊括了非常多的知识点了。包含的模块本文分为十九个模块,分别是:Java基础、容器、多线程、反射、对象拷贝、JavaWeb、异常、网络、设计模式、Spring/SpringMVC、SpringBoot/SpringClo
分类:
编程语言 时间:
2020-05-21 09:41:24
阅读次数:
70
关注对象的分离, 行为型模式的巅峰 1:使得各个流程直接的流转数据 存到一个第三方contenxt 也是责任链模式的标致, 审批过程中的节点动态扩展及更改 ...
分类:
其他好文 时间:
2020-05-20 12:40:31
阅读次数:
46
说起设计模式,很多小伙伴都潜意识的觉得这是个很大的概念,觉得“高大上”,容易望而生畏。要么是行百里者半九十。 我写这个系列的初衷,一是为了记录梳理的过程,二也是为了跟大家共同交流,因为我认为学习理解一块知识有一个明显的标志就是能让一个从来不了解的人都能听懂。所以我尽量以此为目的完成这次记录。 首先要 ...
分类:
其他好文 时间:
2020-05-20 12:08:48
阅读次数:
50
[TOC] 1.面向对象编程 1.1 对象封装 函数的简单编写到对象封装 2.创建型设计模式 ...
分类:
其他好文 时间:
2020-05-19 22:24:52
阅读次数:
70