读书札记
Q-WHai
O ever youthful,O ever weeping.
展开
-
Android中SharedPreferences与Editor的使用
如果不是有接触,我想大家应该比较容易想到的是,数据库(SQLite数据库)和文件存储。其实,在Android开发中,还有三种保存数据的方式,SharedPreferences存储、ContentProvider存储和Network存储。后两种,本篇博客不做详细介绍。原创 2014-05-18 15:18:31 · 10222 阅读 · 0 评论 -
Java:如何正确地使用异常详解
Java中的异常机制是一个好东西。不过好东西也要正确地使用才行,不然就会让我们错误地认识它。在错误地认识状况下,就会错误地使用。这样就成了一个恶性地循环了。这不是我们愿意看到的。不要以为我们已经可以很好地使用异常了,下面就针对部分问题作一个讲解。这部分的问题中,有一些是来自《Effective Java》这本书中,有一部分是来自本人平时开发过程中遇到的。原创 2016-01-19 13:44:03 · 5992 阅读 · 0 评论 -
Effective Java:创建和销毁对象
读这本书第1条规则的时候就感觉到这是一本很好的书,可以把我们的Java功底提升一个档次,我还是比较推荐的。本博客是针对《Effective Java》这本书第2章所写的一篇读书笔记。博客中也有会一些个人对某个模块的理解和深入探究,希望与大家一起进步。原创 2015-06-25 00:35:11 · 2407 阅读 · 2 评论 -
Java 多线程之 synchronized 和 volatile 的比较
在做多线程并发处理时,经常需要对资源进行可见性访问和互斥同步操作。有时候,我们可能从前辈那里得知我们需要对资源进行 volatile 或是 synchronized 关键字修饰处理。可是,我们却不知道这两者之间的区别,我们无法分辨在什么时候应该使用哪一个关键字。本文就针对这个问题,展开讨论。原创 2016-04-05 09:50:24 · 5803 阅读 · 4 评论 -
单例模式在多线程中的安全性研究
关于一般单例模式的创建和分析在我的另一篇博客《Java设计模式——单件模式》中有详细说明。只是在上篇博客中的单例是针对于单线程的操作,而对于多线程却并不适用,本文就从单例模式与多线程安全的角度出发,讲解单例模式在多线程中应该如何被使用。原创 2016-04-06 14:13:33 · 4354 阅读 · 0 评论 -
Java设计模式——桥模式
桥模式(Bridge)是为了解决将抽象部分与实现部分分离,好让他们都在自己的维度上有多维度地变化。这句话是好理解的,只是我在学习完桥模式之后,存在一些疑问,还好现在想通了。现在我就桥模式的设计思想和我的疑问一并发出,希望于你有益。原创 2016-03-31 11:07:30 · 4035 阅读 · 3 评论 -
Java设计模式——迭代器模式
概述 网上大部分人说迭代模式的时候,总是以某一种可遍历的对象为例进行介绍。这是可行的,这也是迭代模式的基本原型。当我看到《Head Frist设计模式》中迭代模式的时候,感觉要是能从另一个角度来说明,可能更能够体现迭代模式的威力所在。 本文介绍的这种迭代模式,倒是更像是适配器-迭代器模式。希望于你有益~版权说明著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注...原创 2016-03-04 12:39:41 · 5374 阅读 · 2 评论 -
Java设计模式——单件模式
有一些对象其实我们只需要一个,比方说:线程池(threadpool)、缓存(cache)、对话框、处理偏好设置和注册表(registry)的对象、日志对象,充当打印机、显卡等设备的驱动程序的对象。事实上,这类对象只能有一个实例,如果制造出多个对象,就会导致许多的问题产生,例如:程序的行为异常、资源使用过量,或者是不一致的结果。原创 2015-05-26 14:25:50 · 5336 阅读 · 0 评论 -
Java设计模式——装饰者模式
本章可以称为“给爱用继承的人一个全新的设计眼界”。我们即将再度探讨典型滥用问题。你将在本章学到如何使用对象组合的方式,做到在运行时装饰类。为什么呢?一旦你熟悉了装饰者的技巧,你将能够在不修改任何底层代码的情况下,给你的(或别人的)对象赋予新的职责。原创 2015-05-25 15:57:36 · 3414 阅读 · 0 评论 -
Java设计模式——观察者模式
本文通过两个实例(分别是“气象观测站”和“计时器应用”),对Java设计模式中的观察者模式做一个详细的说明。原创 2015-11-25 00:35:51 · 19586 阅读 · 6 评论 -
操作系统:进程调度算法详解之FCFS和SPF篇
我们在编码开发的时候,就是在跟进程打交道。不过,可能由于一些高级语言的封装,我们在开发的过程可能感觉不到我们的代码对进程的创建或调用过程。当然,这也不是本文的重点。但是,操作系统却不能不理会进程。下面我就使用Java开发语言来模拟一下进程在操作系统中的调度过程。原创 2015-11-20 08:55:56 · 43417 阅读 · 2 评论 -
Android中使用Handler和异步任务(AsyncTack)来为UI线程执行费时操作
出于性能优化的考虑,Android的UI线程不是线程安全的。这致使我们不能在Android的UI线程中执行一些费时的操作,如下载、刷新等。Android中只允许UI线程对Activity中的UI组件进行修改。原创 2014-08-26 14:36:42 · 2001 阅读 · 0 评论 -
Android的Activity生命周期模拟程序及解析
当Activity处于Android应用中运行时,它的活动状态由Android以Activity栈的形式管理。当前活动的Activity位于栈顶。随着不同应用的运行,每个Activity都有可能从活动状态转入非活动状态,也可能从非活动状态转入活动状态。原创 2014-05-08 20:55:20 · 2022 阅读 · 0 评论 -
Android文件操作中的openFileOutPut和openFileInput
我想大家或多或少都有学习过一段时间的Java吧,学习Android,Java是基础。今天要写的这个文件操作与Java中文件操作基本上是差不多的。都是要先去创建一个输入流/输出流,然后,我们就是通过从指定文件中按字节来读取文件中的内容到我们的输入流中,再把读进来的数据追加到一个字符串缓存中(这里用的是StringBuilder),当然你要是觉得不喜欢new来new去,也可以直接使用String类型的字符串。原创 2014-05-20 18:10:20 · 2788 阅读 · 1 评论 -
Linux中的管道与重定向
这篇博文主要参考了鸟哥的《鸟哥的Linux私房菜》和杨鹏(NetSnake)的《Linux服务器架设》这两本书,以及在网络上查阅的资料。此博文作为我阅读《鸟哥的Linux私房菜》和《Linux服务器架设》这本书的读书笔记。那么接下来就让我们依次了解它们。原创 2015-03-03 15:02:00 · 2999 阅读 · 0 评论 -
对《Python核心编程》中“第一个Python程序”的改进
本程序主要是模仿《Python核心编程》中3.6节——第一个Python程序,并在其基础上做了一些小的改进,而改进的要求则是来源于第三章的课后练习题。本篇博客的一个核心问题就是在我们如何避免重复制造轮子。原创 2015-04-07 20:26:43 · 1606 阅读 · 0 评论 -
Effective Java:对于所有对象都通用的方法
读这本书第1条规则的时候就感觉到这是一本很好的书,可以把我们的Java功底提升一个档次,我还是比较推荐的。这里我主要就关于覆盖equals、hashCode和toString方法来做一个笔记总结,希望能够与君共勉。原创 2015-07-14 23:49:30 · 3475 阅读 · 0 评论 -
Android的消息处理机制——Looper,Handler和Message浅析
Android的消息传递机制是另一种形式的“事件处理”,这种机制主要是为了解决Android应用中的多线程问题——Android平台只允许UI线程修改Activity中的UI组件,这就使得新启动的线程无法去动态修改界面组件中的属性值。但是我们的程序界面不可能是一个静态的呈现,所以这就必须用到本博客中提到的三个大类了。原创 2015-01-28 18:46:04 · 1324 阅读 · 2 评论 -
Android中基于TCP协议的网络通信之使用Socket进行通信
TCP协议被称为一种端到端的协议。这是因为它为两台计算机的连接起到了重要作用:当一台计算机需要与另一台计算机进行接连时,TCP协议会他们之间建立一个连接:用于发送和接收数据的虚拟链路。原创 2014-08-31 12:44:22 · 4781 阅读 · 1 评论 -
深入理解Lambda
概述 Lambda是一个表达式,也可以说它是一个匿名函数。然而在使用它或是阅读Lambda代码的时候,却显得并不那么容易。因为它匿名,因为它删减了一些必要的说明信息(比如方法名)。下面就来说说Lambda是如何进行转换和工作的吧。版权说明著作权归作者所有。 商业转载请联系作者获得授权,非商业转载请注明出处。 作者:Q-WHai 发表日期: 2016年3月10日 链接:原创 2016-03-10 17:18:43 · 45427 阅读 · 5 评论