- 浏览: 34145 次
- 性别:
- 来自: 西安
文章列表
From Effective Java Sencond Edition Item9
1. Store some constant nonzero value, say, 17, in an int variable called result.
2. For each significant field f in your object (each field taken into account by the equals method, that is), do the following:
a. Compute an int hash code c for the field:
...
- 2009-09-21 22:23
- 浏览 1548
- 评论(0)
ConcurrentModificationException异常,一般是由于调用集合框架中集合的remove()方法引起的,但是为什么会引起该异常呢?
原因很简单,就像这个异常的名字修改冲突异常一样,其实就是某个迭代器在另一个迭代器修改某个集合时遍历该集合引起的,因为这样做很容易引起集合的混乱,比如:
List<String> list = new LinkedList<String>();
Iterator it_1 = list.iterator();
Iterator it_2 = list.iterator();
it_1.next();
it ...
- 2009-09-09 22:05
- 浏览 865
- 评论(0)
Collection接口是Java集合框架中的基本接口,其中有一个最基本的方法
public interface Collection<E> {
// ...
Iterator<E> iterator();
// ...
}
这个Iterator接口,是Java中集合(Set,List,Queue)中的迭代器,它提供了最基本的三个方法
public interface Iterator<E> {
boolean hasNext();
E next();
void remove();
}
如果不断调用集合的迭代 ...
- 2009-09-09 20:38
- 浏览 989
- 评论(0)
在回顾数据结构的映射表时,也顺带简单回顾了Java中的各种Map,但是只是一个大概,这里想对Java中的集合框架做一个详细的梳理,因为Java提供的集合框架实现了一系列重要的数据结构,所以将开发者从繁重的编程开发工作中解脱出来,同时从实际的开发工作中来看,这些集合也是十分重要的,所以一定要对它们掌握透彻。
先看看历史,在JDK1.0时,就有了一些容器类,比如:
HashTable
Stack
Vector
Properties
后来随着集合框架的出现,它们也被整合了进来,可以参见这里
现代的集合框架主要由大量的接口,抽象类还有具体的类组成,而这里接口就是规范,而抽象类为框架提供了扩展的可能性 ...
早就想系统的学习CSS还有一些网页美化和设计的东西,可惜一直是个计划,现在工作不是很忙了,那就开始学习一下吧,Let's go。
CSS先说点什么呢?先说一下它的历史,Cascading Style Sheet 层叠样式表,最早的规范是level 1,后来改 ...
闲来无事,测试了一下现在主流浏览器对JavaScript,DOM,CSS的性能和兼容性的支持,数据如下:
JavaScript执行的速度
DOM3与JavaScript的兼容性
CSS选择器的支持
详细的数据信息参考:Browser Benchmark Test
ps:给一篇老外的测试报告
- 2009-09-04 20:25
- 浏览 1403
- 评论(0)
第一次接触JavaScript是在上学的时候,当时和同学搞一个网页设计,那是对脚本语言知之甚少,只是觉得JavaScript只不过是美化一下页面,在没有什么可取之处了,所以一直鄙视,后来上了班,又是做web开发,JS当然也接触的多了,后来赶上web2.0,呵呵,对js又有了新的认识,加之现在做一个web的聊天系统,那js更是用的多了,所以现在,总结一下,孔子说:学而时习之,不亦说乎,温故而知新,呵呵,向他老人家学习一下。
先说点什么呢,那就从BOM和DOM说开吧。
自从netscape navigator2.0把js引入到浏览器中,js可谓与浏览器接下了不解之缘,而js在浏览器中执行的速度, ...
- 2009-08-25 22:15
- 浏览 1006
- 评论(0)
混乱是这样炼成的
liunx的软件安装一般有两种格式一种是rpm(RPM package manager),另一种是deb,跟Debian的命名一样,deb也是因Debra Murdock而得名,她是Debian创始人Ian Murdock的太太。
这两种格式由不同的Linux分发版支持,比如rpm的典型支持是RedHat和Federal,deb那就是Ubuntu了。他们的相应对应的管理工具分别是rpm和dpkg。
简单罗列一下dpkg的命令参数:
dpkg -i package.deb 安装包
dpkg -r package 删除包
dpkg -P package 删除包(包括配置文件) ...
- 2009-07-18 14:54
- 浏览 1557
- 评论(0)
Java 的内存模型 JMM(Java Memory Model)
由于程序的最终运行方式是将程序中各变量(实例域、静态域和数组元素)存入内存,然后通过处理器的加工,再从内存中取出,所以对于单处理器,程序怎样将变量存入内存,以及怎样取出
都不会影响程序的实际运行,而对于多处理程序,变量的存入和取出却变的至关重要,这也是在
讨论Java的线程机制时我们必须面对的问题。所以在这里我先把JMM拿出来总结,因为以后在总结
线程的时候我会多次拿JMM说事。
先定义一下内存模型(来自Brian Goetz 的修复 Java 内存模型,第 1 部分):内存模型描述的是程序中各变量(实例域、静态域和数组元素 ...
- 2009-07-02 22:15
- 浏览 797
- 评论(0)
先交代一下背景,xksd(我就不说我们产品的名字了,假设它就叫xksd吧)是我们公司的一个产品,它是一个给特定的用户群提供多种产品的平台,特定的用户群是ct公司的,而那些产品则由不同的公司提供,我们假设这些产品是jm ...
- 2009-06-20 18:50
- 浏览 782
- 评论(0)
用一个单独的文件创建一个 JAR 文件
jar cf jar-file input-file...
用一个目录创建一个 JAR 文件
jar cf jar-file dir-name
创建一个未压缩的 JAR 文件
jar cf0 jar-file dir-name
更新一个 JAR 文件
jar uf jar-file input-file...
查看一个 JAR 文件的内容
jar tf jar-file
提取一个 JAR 文件的内容
jar xf jar-file
从一个 JAR 文件中提取特定的文件
jar xf jar-file archived-file... ...
- 2009-06-20 18:49
- 浏览 818
- 评论(0)
本篇是我对java的线程的总结的第一篇,因为线程本身是一个大的概念,属于系统一级的,所以在以后的总结中可能还会涉及到一些基础的知识,不过在这里还是以jjvm的对线程支持为主。
先总结几个基本的概念,之所以总结这 ...
- 2009-06-20 18:41
- 浏览 895
- 评论(0)
一个问题,怎样在js中判断一个对象是null还是undefined,我总结了一下,对于undefined推荐使用===(注意是三个等号,bt吧)或使用typeof,为什么呢?
先看一段Code
var obj;
alert(obj == null);
alert(obj == undefined);
结果是什么?true,true那obj到底是undefined呢还是defined呢?当然是defined的了,只不过是null吧了,显然通过==是区分不了的,那要将==替换为===呢?结果就是false,true,个中原因我就不说了,(偷一下懒 :-) ),那如何区分呢?应该 ...
- 2009-06-20 18:37
- 浏览 1674
- 评论(0)
Java theory and practice: Garbage collection and performance
这是我第一次翻译文章,实践一下,先说一下背景,这篇文章是Brian Goetz写的关于垃圾回收的一系列文章的最后一篇,前面还有两篇。
本文的原文链接: http://www.ibm.com/developerworks/java/library/j-jtp01274.html
正文:
垃圾回收的代价(How expensive is allocation?)
JDK1.0和1.1使用标记交换的方式进行内存收集,在采用这种方式时,有时JDK使用了内存压缩的技术,而有 ...
- 2009-06-20 18:33
- 浏览 1072
- 评论(0)
备注:eclipse3.4
1.为eclipse指定jvm:在eclipse中eclipse。init中添加:
-vm /usr/lib/j2se/1.4/bin/java (jvm的路径)
2. 快捷键:alt + /Windows->General->Keys->Content Assist下
Binding: Alt+/
When: 选择Editing Text
- 2009-06-20 18:24
- 浏览 548
- 评论(0)