2011年9月7日

文字向上间歇滚动

摘要: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head> <meta http-equiv="Content-Type" content="text/html; charset=GBK"> <title>文字间歇向上滚动</title> <meta name="author" content="zolra"> <st 阅读全文

posted @ 2011-09-07 22:59 ZolRa 阅读(371) 评论(0) 推荐(0) 编辑

2011年9月4日

容器自适应高度

摘要: 一、DIV最小高度且自适应高度 经常使用div布局的盆友应该有过这样的经验,并且这样的情况并不少见:有一个div,当它里面的内容超过它的高度时,让这个div的高度随内容自动变化(自适应),但是如果内容很少时,又想让这个div的高度保持一个固定的最小值。 我们知道,在IE6中,如果子容器的高度超过父容器的时候,父容器会被子容器撑开,所以我们可以直接设置一个height的高度值即可。但是在IE7+和Firefox、Chrome中就不行了,它不会自动撑开。如果要设置div自适应高度,我们可以采用height:auto;这个属性;不过这个属性IE6又不支持了。现在,我们假设这个div的默认高度是100 阅读全文

posted @ 2011-09-04 23:25 ZolRa 阅读(978) 评论(1) 推荐(0) 编辑

[Effective Java]01.用静态工厂方法代替构造器

摘要: 对于类而言,为了让客户端获取它自身的一个实例,最常用的方法就是提供一个公有的构造器.还有一种方法,也应该占有一席之地.类可以提供一个公有的静态工厂方法,它是一个返回类的实例的静态方法.下面是一个来自Boolean 类的简单示例.这个方法将boolean 基本类型值转换成了一个Boolean 对象引用:public static Boolean valueOf(boolean b) { return b ? Boolean.TRUE : Boolean.FALSE; }提供静态工厂方法而不是公有的构造器,这样做有几大优势.1) 它们有名称. 如果构造器的参数本身没有确切的描述正被返回的对... 阅读全文

posted @ 2011-09-04 09:51 ZolRa 阅读(655) 评论(0) 推荐(0) 编辑

2011年5月30日

Integer自动打包机制

摘要: 我们首先来看一段代码:Java代码 Integer i=100; Integer j=100; System.out.println(i==j); //true Integer i=200; Integer j=200; System.out.println(i==j); //false 差不多的两段代码,怎么结果完全不同呢。我们分两步来说明这个问题:首先Integer i=100; 编译器会自动将int类型常数100包装成Interger,采用的是Integer.valueOf(100);这个方法。然后我们看看valueOf(int)这个方法的源代码:J... 阅读全文

posted @ 2011-05-30 20:31 ZolRa 阅读(457) 评论(0) 推荐(0) 编辑

2011年3月28日

组合问题

摘要: 航班组合问题: 1 package com.shanghai.test; 2 3 import java.util.ArrayList; 4 import java.util.Arrays; 5 import java.util.List; 6 7 public class TestComb { 8 public static void main(String[] args) { 9 //初始化10 AirLine[] aLines = {new AirLine(1, "Line-01"),new AirLine(2, "Line-02"),new Ai 阅读全文

posted @ 2011-03-28 22:42 ZolRa 阅读(233) 评论(0) 推荐(1) 编辑

2011年3月2日

java.util.Arrays.asList 的小问题

摘要: JDK 1.4对java.util.Arrays.asList的定义,函数参数是Object[]。所以,在1.4中asList()并不支持基本类型的数组作参数。JDK 1.5中,java.util.Arrays.asList的定义,函数参数是Varargs, 采用了泛型实现。同时由于autoboxing的支持,使得可以支持对象数组以及基本类型数组。不过在使用时,当传入基本数据类型的数组时,会出现小问题,会把传入的数组整个当作返回的List中的第一个元素,例如:public static void main(String[] args){ int[] a1 = new int[]{1,2,3}; 阅读全文

posted @ 2011-03-02 21:39 ZolRa 阅读(15028) 评论(4) 推荐(5) 编辑

2011年2月26日

较复杂的枚举类型

摘要: 1 package dataStyle; 2 /** 3 * 较复杂的枚举类型 4 * @author ZolRa 5 * 6 */ 7 public class ComEnum { 8 9 public static void main(String[] args) {10 WeekDay weekDay = WeekDay.FRI;11 System.out.println(weekDay.nextDay());12 }13 14 public enum WeekDay{15 //调用带参构... 阅读全文

posted @ 2011-02-26 23:14 ZolRa 阅读(566) 评论(0) 推荐(0) 编辑

2011年2月24日

【转】AOP 的利器:ASM 3.0 介绍(二)

摘要: Java 类文件概述所谓 Java 类文件,就是通常用 javac 编译器产生的 .class 文件。这些文件具有严格定义的格式。为了更好的理解 ASM,首先对 Java 类文件格式作一点简单的介绍。Java 源文件经过 javac 编译器编译之后,将会生成对应的二进制文件(如下图所示)。每个合法的 Java 类文件都具备精确的定义,而正是这种精确的定义,才使得 Java 虚拟机得以正确读取和解释所有的 Java 类文件。图 2. ASM – Javac 流程Java 类文件是 8 位字节的二进制流。数据项按顺序存储在 class 文件中,相邻的项之间没有间隔,这使得 class 文件变得紧凑 阅读全文

posted @ 2011-02-24 19:24 ZolRa 阅读(323) 评论(0) 推荐(0) 编辑

【转】AOP 的利器:ASM 3.0 介绍(一)

摘要: 引言什么是 ASM ?ASM 是一个 Java 字节码操控框架。它能被用来动态生成类或者增强既有类的功能。ASM 可以直接产生二进制 class 文件,也可以在类被加载入 Java 虚拟机之前动态改变类行为。Java class 被存储在严格格式定义的 .class 文件里,这些类文件拥有足够的元数据来解析类中的所有元素:类名称、方法、属性以及 Java 字节码(指令)。ASM 从类文件中读入信息后,能够改变类行为,分析类信息,甚至能够根据用户要求生成新类。与 BCEL 和 SERL 不同,ASM 提供了更为现代的编程模型。对于 ASM 来说,Java class 被描述为一棵树;使用 “Vi 阅读全文

posted @ 2011-02-24 19:20 ZolRa 阅读(378) 评论(0) 推荐(0) 编辑

2011年2月19日

线程之生产者消费者问题(1)

摘要: [代码] 阅读全文

posted @ 2011-02-19 20:45 ZolRa 阅读(294) 评论(0) 推荐(0) 编辑

导航