点滴记忆*记忆点滴
收藏本站

System.arraycopy 是浅拷贝?

    jdk 5新增的java.util.concurrent 包中有个CopyOnWriteArrayList类。从名字及所属包猜得出他是个与线程安全有关的List实现类。但今天我主要关心的还不是它,而是发现源代码中在这个类中元素集合改变时除了同步以外还大量用到 System.arraycopy 进行元素拷贝。于是引发了System.arraycopy 是深拷贝还是浅拷贝这个问题。这个方法是native 方法,传说速度是比较快的。但也就没法让我通过读源代码确定其是深拷贝还是浅拷贝。不过有copy 两字,我想应该是深拷贝,不然也就没必要建这个方法,况且还是本地方法。但工科是不能用猜的,还是做实验吧。

阅读全文>>

javascript 日历控件

一个很小巧的javascript日历控件。

使用方式:

<input type="text" name="growuproom.starttime" value="" 
    maxlength="10" onclick="GDate(this)" style="width:100px;"/>
-
<input type="text" name="growuproom.endtime" value="" 
    maxlength="10" onclick="GDate(this,80)" style="width:100px;"/>
<!--其中第二个参数为起始年份补偿,默认是从当前年-80 至当前年--!>

阅读全文>>

UML类图介绍及画法

UML 类图介绍及画法举例

1. 类(Class

一般包含3个组成部分。第一个是类名;第二个是属性(attributes);第三个是该类提供的方法(类的性质可以放在第四部分;如果类中含有内部类,则会出现第五个组成部分)。类名部分是不能省略的,其他组成部分可以省略。

类名书写规范:正体字说明类是可被实例化的,斜体字说明类为抽象类。

属性和方法书写规范:修饰符 [描述信息] 属性、方法名称 [参数] [:返回类型|类型]

属性和方法之前可附加的可见性修饰符:

加号(+)表示public;减号(-)表示private#号表示protected;省略这些修饰符表示具有package(包)级别的可见性。

如果属...

阅读全文>>

java web开发 include与jsp:include总结

java web 开发中特别是前端,经常为了代码的重用性而将页面拆分成小页面。这时就需要用到嵌套将各小页面整合成符合需求的大页面。现在也有些开源框架如sitemesh 专门帮你构建页面。但jsp 原生的导入方式我们还是需要熟悉。在jsp中常用的导入方式有两种形式,分别是

<%@ include file=” ”%> 指令元素
<jsp:include page=” ” flush=”true”/> 行为元素,标签形式

具体它们将在何处用?如何用及它们有什么区别?这应该是很多人看到它都会想到的问题。这里简单总结一下:

<%@ include fi...

阅读全文>>

java 学习书籍推荐之 O'Reilly'系列

Java 技术可以说是越来越重要了,不但可以用在计算机上,甚至连电视等家电用品,行动电话、个人数字助理(PDA)等电子产品,以及智能卡都可以透过 Java 的技术来为人们创造更便利的生活。许多人因此对 Java 感兴趣,想好好学习 Java。

因为讲授 Java 课程的关系,这几年来,不少人问我:怎样才能学好 Java,我给他们的建议很简单 ---『多读 Java 的好书,可以有系统又轻易地获得许多高手的经验』。其实,我说的也是我自己的经验。


阅读全文>>

java 学习之经典书籍推荐

    书作为人类知识的载体,已经存在几千年了。虽然现在有了视频、音频等多种现代化手段来记载知识,但书依然不会被淘汰。特别是经典是书籍,仍然受到很多人的欢迎并珍藏。JAVA 虽然只是一门计算机语言,并且是在不断的更新中,但一些有关于java 的书籍却在很长时间内都值得我们珍藏。

    这些经典书籍大部分都可以在网上找的电子版。不过我不建议去看电子版,原因有二:

    1. 伤眼睛。我们看经典书籍不是说编程过程遇到问题,临时抱佛脚,去书中找个答案了事。而是要慢慢细品,时间肯定短不了...

阅读全文>>

java 自动装箱、拆箱深入理解

    java 自动装箱作为java 5 提供给程序员的一颗语法糖,确实给java 编程带来很大方便。但不要因为自动装箱好用就滥用,因为其毕竟只是语法糖,本质是在通过调用各包装类的valueOf 方法来实现,所以对性能要求较高的地方,更要慎用。很多专家,包括有效编程 作者也建议,我们在能用基本类型的地方尽量用基本类型,不要用包装类因为其容易引起自动装箱。

    下面先来做一个测试:

	public static void main(String[] args) {
		Integer a = 1;
		Inte...

阅读全文>>

css 1- 3 选择器,及浏览器兼容情况

css1-css3提供非常丰富的选择器,但是由于某些选择器被各个浏览器支持的情况不一样,所以很多选择器在实际css开发中很少用到。

1.基础的选择器

选择器

含义

示例

*

通用元素选择器,匹配任何元素

* { margin:0; padding:0; }

E

标签选择器,匹配所有使用E标签的元素

p { font-size:2em; }

.info和...

阅读全文>>

maven 插件使用及生命周期(phase)

Maven 调用命令常用的两种方式有:

    1.mvn pluginID:goalID -Dparam=value

    2.mvn deploy

其中第一种方式很容易理解,就是使用一些参数调用某些插件的某个目标。通常实现的就是一个功能。

而第二种方式则实现了maven 的原则,约定优于配置。maven 通过约定生命周期,并绑定响应插件到生命周期的某个阶段来来简化我们对插件命令的调用。

官方文档:

http://maven.apache.org/guides/int...

阅读全文>>

转载 java 枚举enum 的使用

java枚举的使用与分析

public enum EnumTest {

     FRANK("The given name of me"),
     LIU("The family name of me");
     private String context;
   &n...

阅读全文>>