易截截图软件、单文件、免安装、纯绿色、仅160KB

Java学习笔记(1) 对象初始化顺序

在Java中,当一个对象被创建时,成员变量的初始化及构造方法的调用遵循以下顺序:
1. 将分配给对象的存储空间初始化成二进制的零。
2. 调用所有基类的构造方法。这个步骤会不断地反复递归下去,首先是构造这种层次结构的根,然后是下一层子类,等等,直到最底层的子类。
3. 按照声明的顺序调用成员的初始化方法。
4. 调用子类的构造方法主体。
下面举例说明。
class Glyph {
    Glyph(){
        System.out.println("Glyph() before draw()");
        draw();
        System.out.println("Glyph() after draw()");
    }
   
    void draw(){
        System.out.println("Glyph.draw()");
    }
}
class RoundGlyph extends Glyph {
    private int radius = 1;
   
    RoundGlyph(int r){
        radius = r;
        System.out.println("RoundGlyph.RoundGlyph(), radius = " + radius);
    }
   
    void draw(){
        System.out.println("RoundGlyph.draw(), radius = " + radius);
    }
    public static void main(String[] args) {
        new RoundGlyph(5);
    }
}
运行结果:
Glyph() before draw()
RoundGlyph.draw(), radius = 0
Glyph() after draw()
RoundGlyph.RoundGlyph(), radius = 5
可以看出,在输出结果的第二行中,由于步骤1的缘故,radius的值为0.


相关文档:

实现AMF3与Java之间数组的传递(动态创建数组)...

首先,AMF3似乎并不支持List.ArrayList等数组的解析...Java客户端传递List对象,AMF3无法解析为Array...
原因是:AMF3只支持基础数据类型...
故,需要将List等数据转换为Object[] !这样AMF3才能将Java传递的数组解析为Array...
由于数组的创建,即便一开始不赋值,也需要设置数组的length,如:String[] myString = new Str ......

在java中使用key value型数据库Berkeley DB

除了关系型数据库外,还有key-value型数据库可以选择,在大型的查询系统中,key-value型数据库可以出色的完成某些任务。
Oracle的Berkeley DB就是一种key-value型数据库,本文简要介绍在java中使用Berkeley DB。
PartKey.java:
import java.io.Serializable;
public class PartKey implements Serializable
{
priva ......

通过 DAOFactory 的泛型写法来演示Java泛型的特殊用法

通过 DAOFactory 的泛型写法来演示Java泛型的特殊用法
小型项目中常常都没有用三方持久化框架,而大都是用公司或自行依据DAO模式封装的一些组件来完成数据库持久化动作,并且,通常为了更具可扩展性,常常使用抽象工厂模式来解耦合。
一、先看代码
1、简单工厂代码
/************************************************* ......

java反射

package reflect;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class Test {
 public static void main(String[] args) {
  try {
   Class c = Class.forName("reflect.Student");// 根据类的完整类名创建类象
    ......

Java学习资料汇总

1.Java学习网站:
Java中文世界论坛        http://www.chinajavaworld.com/index.jspa
Java世纪网              http://www.java2000.net/
Java 中文站            http://www.java-cn.com/
Java学习室      ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号