- 博客(14)
- 收藏
- 关注
原创 JAVA集合源码阅读-(二)ArrayList源码解析
前沿ArrayList使用频率较高,所以弄懂这个类极其重要。以下代码基于jdk1.8## 正文ArrayList是一个数组队列。它的容量可以动态增长属性// 存放数据的数组transient Object[] elementData;// list的长private int sizeArrayList比较重要的两个属性:elementData和size(1)elemen...
2019-02-05 20:47:24
217
原创 JAVA集合源码阅读-(一)JDK源码调试加注释
前言看源码最好的方式就是调试。记录调试踩过的坑。给源码加注释idea默认关联压缩过的源码,把源码解压出来替换。替换前如图所替换后如图所示2.替换后进入源码加注释提示:file is not writeable。原因是解压出来的文件没有写的权限。处理方式,给对应的文件夹添加权限。sudo chmod -R 777 src源码添加注释后,调试行数对不上。提示source...
2019-01-26 18:35:11
2011
2
原创 模板方法使用
需求背景:需要写3个定时任务,分别调用3个http接口获取数据,处理业务逻辑。显而易见,这3个定时任务,工作流程大致是一样的,主要区别是http链接和具体的业务处理逻辑不一样。封装一个抽象的模板类,把相同的工作流程封装起来。 代码实现:模板类:import java.util.ArrayList;import java.util.List;/** * Created ...
2018-12-09 23:59:58
267
转载 装饰者模式
这个模式花费了挺长时间,开始有点难理解,其实就是定义:动态给一个对象添加一些额外的职责,就象在墙上刷油漆.使用Decorator模式相比用生成子类方式达到功能的扩充显得更为灵活。设计初衷:通常可以使用继承来实现功能的拓展,如果这些需要拓展的功能的种类很繁多,那么势必生成很多子类,增加系统的复杂性,同时,使用继承实现功能拓展,我们必须可预见这些拓展功能,这些功能是编译时就确定了,是静态的
2017-05-08 23:47:58
186
原创 策略模式
定义:策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。策略模式类图: 右边是策略接口以及它的实现类,左边是一个上下文,这个上下文会拥有一个策略,策略可以随意替换。这个上下文还含有个方法调用策略接口的方法。例子:商店的收费系统,有不同的收费模式。正常收费,打8折,满300减100。这3种收费模式,就是对应的具体策略,就是类图上
2017-05-03 23:25:18
247
原创 右键快捷打开GitBash失败
右键快捷打开Git Bash here失败,提示: Error: Could not fork child process: Resource temporarily unavailable (-1). DLL rebasing may be required; see ‘rebaseall / rebase –help’.解决方法: 1. 安装路径下F:\Program Files\Git
2017-04-30 00:53:01
8371
原创 鱼虾蟹骰宝游戏模拟
鱼虾蟹游戏测试同时买几个的时候赚钱的几率最高?结论:同时买5种的时候,60%的几率能赢钱!!import java.util.ArrayList;import java.util.List;import java.util.Random;/** * 鱼虾蟹 * 1:鱼,2:虾,3:蟹,4:金钱, 5:葫芦,6:鸡 * @author Ho * */public
2017-01-30 23:26:39
5080
1
原创 单例模式的几种实现方式比较
首先上一个最简单的Demopublic class Singleton { private Singleton() { //创建单例的过程可能会比较慢 System.out.println("Singleton is create"); } private static Singleton instance = new Singleton(); public static
2016-11-06 23:27:02
384
原创 后台密码校验
任务需求如下:1.密码的长度不少于8位2.连续的字母和数字不能超过4个,譬如abcd、12343.不能出现连续4个的键盘序列,譬如qwer拿到需求后,就往正则表达式方面去想。然而没有学过正则表达式,看了正则表达式相当的资料还是不懂就慌了。后来整理了一下思路,不用正则表达式的方式来写。第一个要求很简单跳过。第二个要求一开始是打算自己写方法来判断,每个字符都跟后
2015-08-15 23:11:05
1586
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人