Java多线程学习笔记(二) 发表于 2017-07-21 | 分类于 JavaSE 对象及变量的并发访问“非线程安全”其实会在多个线程对同一个对象中的实例变量进行并发访问时发生,产生的后果就是”脏读”,也就是取到的数据其实是被更改过的。而”线程安全”获得的实例变量的值是经过同步处理的,不会出现”脏读”的现象。 阅读全文 »
模版方法模式 发表于 2017-06-30 | 分类于 设计模式 模板方法模式定义:规定一个操作中的算法的骨架,而将步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义算法的某些特定步骤。 阅读全文 »
Java多线程学习笔记(一) 发表于 2017-06-24 | 分类于 JavaSE Java多线程入门进程和多线程的概念什么是进程? 进程是操作系统结构的基础,是一次程序的执行;是一个程序及其数据在处理机上顺序执行时所发生的活动;是程序在一个数据集合上运行的过程;它是系统进行资源分配和调度的一个独立单位;是受操作系统管理的基本运行单元。 阅读全文 »
编辑距离问题 发表于 2017-06-22 | 分类于 算法 编辑距离问题概念描述:编辑距离,又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。 阅读全文 »
Maven学习笔记 发表于 2017-06-21 | 分类于 工具 简介什么是Mavenmaven这个单词的翻译为“专家”或“内行”。作为我们开发过程中使用的工具而言,Maven是一个跨平台的项目管理工具,并且是Apache组织中的开源项目之一,主要用于Java平台的项目构建,依赖管理和项目信息管理等。它是一个异常强大的构建工具,能够帮助我们自动化构建过程,从清理,编译,测试到生产报告,再到打包和部署,我们只需要使用maven配置好项目,然后输入简单的命令,maven会帮我们处理这些繁琐的任务。 阅读全文 »
设计模式原则 发表于 2017-06-21 | 分类于 设计模式 单一职责原则(Single Responsibility Principle)定义:就一个类而言,不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 阅读全文 »
命令行的使用 发表于 2017-05-07 | 分类于 Linux 前言一提到Linux,许多人都会说到“自由”,但我不认为他们都知道“自由”的真正涵义。“自由”是一种权力,它意味着你能决定你的计算机能做什么,同时能够拥有这种“自由”的唯一方式就是知道计算机正在做什么。这个时候,我们就需要命令行来帮助我们与计算机交互获得“自由”。所以人们常说,“图形用户界面让简单的任务更容易完成,而命令行界面使完成复杂的任务成为可能”,到现在这句话仍然很正确。接下来的正文有点像是在做笔记的形式,没有成文,写这篇博客的目的也是为了方便查阅。 阅读全文 »
HTTPS 发表于 2017-04-24 | 分类于 计算机网络 前言我们在享受互联网给我们带来的便利的同时也承受了互联网带来的伤害,比如上网的时候经常会遇到密码被盗,信息泄露等令人郁闷的事情。其中有一个原因为:互联网早期绝大部分网站使用的是HTTP协议,我们在http协议下输入的任何信息都是不加密的。简单来说,这些密码以及个人隐私信息全都一字一句在网络传输中“裸奔”。 阅读全文 »
HTTP 发表于 2017-04-08 | 分类于 计算机网络 前言之前在学习javaEE相关的javaWeb技术的时候,发现自己对HTTP协议的了解太缺乏了,导致看起书来“香菇,难受”,于是花了一点时间学习了HTTP协议,当时也没有很详细去了解细节。现在过了几个星期,是时候写篇博客复习一下了。 阅读全文 »