最新发布 第4页

爱上极客闫庚哲的个人博客 —— 一只程序猿

设计模式

Java设计模式——建造者模式

动机 说道建造者肯定联想到建筑工人,比如在建筑一个茅草屋和一个砖瓦房时,过程一样只是用的材料不同。比如第一步建立地基:茅草屋用工具,砖瓦房用机器;第二步建立框架:茅草屋用树木,砖瓦房用混凝土;第三步建立房屋:茅草屋用茅草,砖瓦房用砌砖。 可以看出过程是一样的,只是用到的材料不同。因此将过程和材料解耦,将这些复杂材料的生...

yan 2016 年 10 月 18 日 110℃ 0评论 2喜欢

设计模式

Java设计模式——简单工厂、工厂方法、抽象工厂

简单工厂模式 一个工厂实现类,一个产品抽象类,N个产品实现类。 类图: 时序图: 像工厂一样,可以生产出来多个产品。比如一个按钮工厂,可以生产出来圆形按钮、矩形按钮、三角形按钮等等,但是所有的按钮都继承自原始的按钮抽象基类。 特点:传入一个值不同的参数可以生产出不同的按钮。各自的形状属性可能不同,但是都有相同的方法...

yan 2016 年 10 月 5 日 652℃ 14评论 2喜欢

Java进阶

HashMap源码学习——实现原理

HashMap介绍 HashMap是基于哈希链表的Map接口的非同步实现。允许使用null值和null键,存储是无序的,是按照哈希散列排序的。 数据结构 最基本的结构是链表散列,如图由两部分组成:数组和链表。HashMap的底层就是一个数组,数组中的每一项都是一个链表。 初始化 当新建一个HashMap的时候,会初始...

yan 2016 年 8 月 30 日 875℃ 6评论 8喜欢

实战应用

SVN代码合并——冲突解决

SVN 在项目的开发中,SVN是一个很有用,使用的也很多的一款代码管理软件。当单独开发时,通过对版本的管理控制,可以使代码进行回溯等操作。但是一旦变成了多人开发时,新问题出现了——代码的合并。 冲突的产生 svn目前已经很智能了,在多人开发中,即使两人更改了同一个文件的不同位置(比如A修改了第一行,B修改了第二行),s...

yan 2016 年 8 月 29 日 1700℃ 3评论 3喜欢

计算机网络

WebSocket介绍,与Socket的区别

WebSocket介绍与原理 WebSocket protocol 是HTML5一种新的协议。它实现了浏览器与服务器全双工通信(full-duplex)。一开始的握手需要借助HTTP请求完成。 ——百度百科 目的:即时通讯,替代轮询 网站上的即时通讯是很常见的,比如网页的QQ,聊天系统等。按照以往的技术能力通常是采用轮...

yan 2016 年 7 月 26 日 4172℃ 1评论 3喜欢

Java

线程、多线程以及线程池的相关问题

线程 1)线程和进程有什么区别? 一个线程是一个独立的运行环境,是一个独立的程序或者应用。线程则是进程中的一个任务。 线程是进程的子集,一个进程可以有多个线程并发执行不同任务。 不同进程使用不同内存空间,所有线程共享同一个内存空间(别和栈内存混淆,每个线程有单独的栈内存用于存储本地数据) 2)Java中如何实现线程? ...

yan 2016 年 6 月 1 日 521℃ 0评论 4喜欢

Java初级

Java内存泄露

内存泄露是指当不再使用的对象没有得到释放,还占有内存,从而造成内存浪费的情况。 在C++中,内存是由程序员进行管理的,从内存的创建、使用和释放都是程序员去操作。很多时候因为疏忽忘记对对象的释放,从而导致无用对象不断增加,导致内存不足,产生内存泄露的现象。 原因 一般产生内存泄露的原因主要有如下两种:第一种,没有释放掉不...

yan 2016 年 4 月 21 日 443℃ 0评论 6喜欢

Java初级

java中的四种引用

从jdk1.2以后,为了更好的控制对象的生命周期,从而定义了四中级别:强引用、软引用、弱引用和虚引用。不同的引用对于JVM的垃圾回收以及内存泄露等有着重要的影响。 强引用 正常的使用中,声明的对象都是强引用,是最普遍的引用。强引用是不能被回收机制所回收的,即使达到一定程度之后,报出OutOfMemoryError异常也...

yan 2016 年 4 月 21 日 495℃ 0评论 7喜欢

Java初级

详细阐述集合类

Collection接口,是集合类的最基本接口。集合类(Collection)顾名思义,代表一组元素(Elements)的集合。继承该接口的主要是List、Set和Queue三个接口,不提供直接继承的类。 由此可知,Set、List或Queue都是集合类,是一组元素的集合,与Map有本质性的区别。Map是键值对的形式...

yan 2016 年 4 月 19 日 365℃ 0评论 3喜欢

Java初级

JAVA中的接口和抽象类

抽象是面向对象设计的几大特点之一,在JAVA中的体现则是抽象类和接口。这两者十分的相似,想很多初学者甚至接触java几年的人也很难分清他们。今天笔者在查看集合类相关的代码的时候,发现了有部分是接口如List、Map等,有部分是抽象类如AbstractList、AbstractSet等,由于对两者不是十分的清楚,比较迷惑...

yan 2016 年 4 月 18 日 442℃ 0评论 4喜欢