摘要: ArrayList,LinkedList,Vector这三个类都实现了java.util.List接口,但它们有各自不同的特性,主要如下:一、同步性ArrayList,LinkedList是不同步的,而Vestor是的。所以如果要求线程安全的话,可以使用ArrayList或LinkedList,可以节省为同步而耗费开销。但在多线程的情况下,有时候就不得不使用Vector了。当然,也可以通过一些办法包装ArrayList,LinkedList,使他们也达到同步,但效率可能会有所降低。二、数据增长从内部实现机制来讲ArrayList和Vector都是使用Objec的数组形式来存储的。当你向这两种类 阅读全文
posted @ 2012-03-22 17:03 yunxiange 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 1.很多新手碰到异常处理的时候都偷懒不想看,觉得没有必要,其实只是新手的代码就那么几行还体会不到异常处理的好处,自然不想看了嘛,可是学习不是马虎的事嘛!!那么我们为什么需要异常处理呢??早期的编程语言(比如C语言)没有异常处理,通常是遇到错误返回一个特殊的值或设定一个标志,并以此判断是不是有错误产生。随着系统规模的不断扩大,这种错误处理已经成为创建大型可维护程序的障碍了。于是在一些语言中出现了异常处理机制,比如在Basic中的异常处理语句"on error goto”,而Java则在C++基础上建立了新的异常处理机制.2.Java中的异常处理Java通过面向对象的方法进行异常处理,把 阅读全文
posted @ 2012-03-22 16:45 yunxiange 阅读(413) 评论(0) 推荐(0) 编辑
摘要: 1.使用C语言的程序员可能习惯于在没有任何限制下访问所有东东,这不是说不好,可能在个人英雄时代是非常好的,可是现在的软件工程动不动就数十万行代码,早已不是单个程序员所能做的了,现在讲的是TeamWork(团队合作),为了解决多个程序员之间的命名和程序之间的沟通问题,C++提出了访问控制和命名空间的概念,访问控制也是面向对象中实现隐藏的主要手段.为什么要隐藏?先谈点,具体可以去研究面向对象的程序设计,“进行面向对象的设计时,一项基本的考虑是:如何将发生变化的东西与保持不变的东西分隔开。”这一点对于库来说是特别重要的。那个库的用户(客户程序员)必须能依赖自己使用的那一部分,并知道一旦新版本的库出台 阅读全文
posted @ 2012-03-22 16:42 yunxiange 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中。本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类。Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMapCollection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些Collection允许相同. 阅读全文
posted @ 2012-03-22 16:41 yunxiange 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 看看程序,说出你的结果(我最后再给出答案)程序一:public class Equivalence { public static void main(String[] args) { Integer n1 = new Integer(47); Integer n2 = new Integer(47); System.out.println(n1 == n2); System.out.println(n1 != n2); }}你的结果如果是true和false的话,那么很不幸告诉你这是错误的答案,如果你不信的话可以在程序中试试,现在讲一下为什么。Java中比较对象的时候和C或者C++中不一样, 阅读全文
posted @ 2012-03-22 16:20 yunxiange 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 我们知道,许多程序设计语言都允许在程序运行期动态地分配内存空间。分配内存的方式多种多样,取决于该种语言的语法结构。但不论是哪一种语言的内存分配方式,最后都要返回所分配的内存块的起始地址,即返回一个指针到内存块的首地址。当已经分配的内存空间不再需要时,换句话说当指向该内存块的句柄超出了使用范围的时候,该程序或其运行环境就应该回收该内存空间,以节省宝贵的内存资源。在C,C++或其他程序设计语言中,无论是对象还是动态配置的资源或内存,都必须由程序员自行声明产生和回收,否则其中的资源将消耗,造成资源的浪费甚至死机。但手工回收内存往往是一项复杂而艰巨的工作。因为要预先确定占用的内存空间是否应该被回收是非 阅读全文
posted @ 2012-03-22 16:17 yunxiange 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 1.刘备的经历告诉我们:集团总裁,完全可以从摆地摊做起。2.诸葛亮的经历告诉我们:进私企,其实比进国企更有发展空间。3.吕布的经历告诉我们:频繁的跳槽,直接导致没老板敢录用你。4.庞统的经历告诉我们:长得太丑,可能会影响你的应聘效果。5.马谡的经历告诉我们:专业课学得再牛B,工作时基本用不上。6.杨修的经历告诉我们:在职场上,总搞得比领导高明,你会死得很惨。7.甘宁的经历告诉我们:有不良前科,不影响你考公务员。英雄不问来路。8.袁绍的经历告诉我们:如果市场自由竞争,国企未必干得过私企。9.曹操的经历告诉我们:想在市场上大有作为,必先高举国家政策。10.关羽的经历告诉我们:即便你是MBA(工商管 阅读全文
posted @ 2012-03-20 16:32 yunxiange 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 我能抽象出整个世界...但是我不能抽象出你...因为你在我心中是那么的具体...所以我的世界并不完整...我可以重载甚至覆盖这个世界里的任何一种方法...但是我却不能重载对你的思念...也许命中注定了 你在我的世界里永远的烙上了静态的属性...而我不慎调用了爱你这个方法...当我义无返顾的把自己作为参数传进这个方法时...我才发现爱上你是一个死循环...它不停的返回对你的思念压入我心里的堆栈...在这无尽的黑夜中...我的内存里已经再也装不下别人...我不停的向系统申请空间...但却捕获一个异常---我爱的人不爱我...为了解决这个异常...我愿意虚拟出最后一点内存...把所有我能实现的方法地 阅读全文
posted @ 2012-03-20 16:29 yunxiange 阅读(96) 评论(0) 推荐(0) 编辑
摘要: Web 前端优化最佳实践最后一部分是针对移动应用的,其实只是针对 iPhone 的,目前只有两条规则。1. 单个数据对象小于 25K (Keep Components under 25K)这个似乎只是针对 iPhone 研究的。建议保持单个 Web 数据对象在 25 K 以下。为什么是 25K? Apple 官方信息指出可缓存到内存中的 Web 对象最大支持到 10M,但经过测试,发现也就是 25K 左右。iPhone 在市场上的优异表现,让 Web 人员不得不考虑如何针对其进行优化。相信这部分内容也在不断变化中。2. Pack Components into a Multipart Docu 阅读全文
posted @ 2012-03-19 22:33 yunxiange 阅读(129) 评论(0) 推荐(0) 编辑
摘要: Web 前端优化最佳实践第六部分面向 图片(Image),这部分目前有 4 条规则。在最近的 Velocity 2008 技术大会上,Yahoo! 的 Stoyan Stefanov 做的 Image Optimization: How Many of These 7 Mistakes Are You Making 也非常有参考价值。结合一起说一下。1. 优化图片 (Optimize Images)使用 GIF 、JPG 还是 PNG 格式的图片? 尽可能的使用 PNG 格式的图片,更多的功能,更小的尺寸(与 GIF 相比)。对于 PNG 图片,考虑用 Pngcrush 或类似的工具进行优化。 阅读全文
posted @ 2012-03-19 22:31 yunxiange 阅读(117) 评论(0) 推荐(0) 编辑