- 浏览: 144107 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
zhuhaihua:
gigix 写道http://jira.openqa.org/ ...
Selenium 如何不在Iframe里面运行测试? -
gigix:
http://jira.openqa.org/browse/S ...
Selenium 如何不在Iframe里面运行测试? -
jiayanchang:
Java最全面试题
1-类的静态初始化块(注:只会第一次使用到这个类的时候被执行一次)
2-类的静态数据成员
3-类的非静态初始化块
4-类的非静态数据成员
5-类的构造函数
example in 《Thinking in java》
java 代码
- class Bowl{
- Bowl(int marker){
- System.out.println("Bowl :"+marker);
- }
- void f(int marker){
- System.out.println("f :"+marker);
- }
- }
- class Table{
- static Bowl b1=new Bowl(1);
- Table(){
- System.out.println("Table()");
- b2.f(1);
- }
- void f2(int marker){
- System.out.println("f2 :"+marker);
- }
- static Bowl b2=new Bowl(2);
- }
- class Cupboard{
- Bowl b3=new Bowl(3);
- static Bowl b4=new Bowl(4);
- Cupboard(){
- System.out.println("Cupboard()");
- b4.f(2);
- }
- void f3(int marker){
- System.out.println("f3 :"+marker);
- }
- static Bowl b5=new Bowl(5);
- }
- public class StaticInitialization {
- public static void main(String[] args) {
- System.out.println("Creating new Cupboard() in main");
- new Cupboard();
- System.out.println("Creating new Cupboard() in main");
- new Cupboard();
- t2.f2(1);
- t3.f3(1);
- }
- static Table t2=new Table();
- static Cupboard t3=new Cupboard();
- }
执行结果:
- Bowl :1
- Bowl :2
- Table()
- f :1
- Bowl :4
- Bowl :5
- Bowl :3
- Cupboard()
- f :2
- Creating new Cupboard() in main
- Bowl :3
- Cupboard()
- f :2
- Creating new Cupboard() in main
- Bowl :3
- Cupboard()
- f :2
- f2 :1
- f3 :1
发表评论
-
C programming
2010-11-20 02:49 7361.Convert other types to char a ... -
Notes
2010-09-15 10:56 679Debug in eclipse, java.lang.Out ... -
Agile Java Notes
2010-05-05 23:25 6181.不要将集合对象的类型直接对外暴露 例如 Course ... -
Test-Driven Development By Example Note
2009-03-01 16:28 768Chapter One & Two 1)将需要实现的 ... -
SCWCD5 - CX-310-083 备考
2008-08-05 12:13 1281Exam Name: CX-310-083 (SCWCD5) ... -
Java 相关错误拾集
2008-04-29 10:06 10091.(in Eclips)Reason:some charac ... -
Vista 下 Java开发环境安装配置手纪
2008-04-22 22:48 1961终于装上了Vista,都听说Vista下面Java的开 ... -
Computer forum URL List
2008-04-08 23:28 996Java: http://forum.java.sun.c ... -
for InterView one question per day
2007-12-12 10:25 9211:What's the difference between ... -
Java虚拟机类装载
2007-07-09 17:58 909转自:http://www.qqread.com/java/2 ... -
Simple of Java Reflection
2007-07-09 16:39 925define an entityObject: java 代码 ... -
eclipse3.2.1及插件安装基础教程
2007-07-05 13:33 3072版权所有:(xiaodaoxiaodao)蓝小刀 http:/ ... -
Thinking in Java学习摘录
2007-07-02 17:38 857使用合成还是继承的原则 在判断该使用合成还是继 ... -
Java 专业人士必备的书籍和网站列表(转)
2007-06-20 13:38 863Java 专业人士必备的书籍和网站列表 author:Roy ... -
程序员成长最快的环境(转)
2007-06-20 11:24 816程序员成长最快的环境 ... -
Tomcat无法访问manager页面
2007-06-11 18:09 6084今天访问Tomcat5.0.28的manager页面,老是也访 ... -
Java入门实例classpath及package详解
2007-06-08 15:26 1025http://bbs.ss.pku.edu.cn/ss/ind ... -
深入理解abstract class和interface
2007-06-06 16:28 1101(转自:http://blog.csdn.net/duosha ... -
Java最全面试题
2007-06-06 15:28 3550面试中被问到过的题目 ... -
《Java学习从入门到精通 》
2007-05-08 16:00 1049《Java学习从入门到精通 》-robbin著: http ...
相关推荐
### Java中类的初始化顺序详解 #### 一、概述 在Java编程语言中,类的初始化是一个非常重要的概念。类的初始化涉及到多个方面,包括静态成员变量、实例成员变量、静态初始化块、实例初始化块以及构造函数等。本文...
详细介绍了Java的静态成员变量、静态数据块、非静态成员变量和非静态成员变量等初始化顺序
Java 中的初始化顺序是按照定义的顺序进行的,而静态变量的初始化顺序则是按照定义的顺序,并且只在第一次访问时初始化。 Java 初始化顺序的知识点总结: * 类变量(静态变量)和实例变量(对象变量)的区别 * ...
Java类成员初始化顺序是Java编程中一个非常重要的概念,它直接关系到Java类的实例化和成员变量的初始化顺序。下面我们将通过详细的示例代码来介绍Java类成员初始化顺序。 首先,Java类中包含7种成员:静态变量、...
本篇文章将深入探讨C++和Java中变量和成员初始化的差异,并通过具体的代码示例进行对比。 在C++中,初始化顺序遵循以下规则: 1. 静态成员变量:无论它们在哪里定义,静态成员变量都按照声明的顺序初始化。 2. 非...
在Java中,类的初始化顺序是一个经常被问及的面试题目,尤其对于Java程序员和工程师来说,了解这个知识点是必须的。在Java中,类的初始化顺序是面试中的经典问题之一,它涉及到继承、静态成员以及实例成员等多个方面...
这种情况下,初始化顺序如下:首先,`Lower`类的实例创建并分配默认值,然后调用`Upper`的构造器,接着执行`Initializer.initialize()`,该方法根据对象的实际类型(`Lower`)来设置字段的值。 5. **默认值**:即使...
- 在类的静态成员初始化完成之后,才会执行类的非静态成员初始化。 - 最后执行类的构造函数来创建对象。 3. **静态与非静态初始化的区别**: - 静态初始化发生在类被加载时,而非静态初始化则发生在每个对象被...
Java 变量初始化的时机是指在 Java 语言中变量的初始化过程,包括变量的声明、初始化和赋值的步骤。 Java 变量声明 在 Java 语言中,每个变量必须先声明,然后才能使用。声明变量时必须指定该变量的数据类型。...
了解这些初始化顺序有助于避免可能出现的错误,比如数据竞争、初始化异常等问题。在面试中,能够清晰地解释这个概念不仅显示了你对Java基础知识的掌握,也体现了你在实际编程中解决问题的能力。所以,对于Java程序员...
Java类的初始化顺序是编程中一个非常重要的概念,它涉及到对象的创建过程和成员变量的初始化。当一个Java类被实例化或者其静态成员被访问时,类的初始化过程就开始了。以下详细解释了Java类的初始化顺序: 1. **...
2006年11月16日的更新提到了一种特殊情况,即在静态初始化块中直接或间接地创建了当前类的实例,这可能会导致初始化顺序的混乱。为了避免此类问题,应避免在静态初始化块中直接实例化当前类,而是将其延迟到类完全...
在Java编程语言中,`static`关键字扮演着重要的角色,特别是在初始化类的静态成员时。`static`静态初始化块是用来初始化类级别的变量,也就是说,这些变量是属于类本身,而不是类的实例。当我们讨论“Java static...
静态初始化块只可以初始化类变量,即static修饰的数据成员。静态初始化块的执行顺序在静态变量的初始化之前。 非静态初始化块 非静态初始化块在每个对象生成时都会被执行一次,可以初始化类的实例变量。非静态初始...
首先,让我们来看一下Java中类的初始化顺序。在Java中,一个类可能包含静态变量、静态初始化块、成员变量、实例初始化块和构造函数。当创建一个对象时,这些元素的加载顺序遵循特定的规则: 1. 静态成员和静态初始...
在Java面试中,理解和掌握类的初始化顺序对于理解Java语言的特性至关重要。类的初始化顺序不仅涉及到对象的创建,还涉及到类成员的加载顺序,包括静态成员和实例成员。 在Java中,类的初始化顺序遵循以下规则: 1....
※在所有类成员初始化完成之后,才调用本类的构造方法创建对象。 构造方法的作用就是初始化。 (2) 静态对象的初始化 程序中主类的静态变量会在main方法执行前初始化。 不仅第一次创建对象时,类中的...
这个压缩包“Java-objects-initial.rar_objects”包含了关于Java对象初始化顺序的详细信息,主要以"Java objects initial.txt"文件的形式存在。以下是对这个主题的详细阐述: 首先,我们需要了解Java对象生命周期的...
5.4 this关键字 5.4.1 在构造器中调用构造器 5.4.2 static的含义 5.5 清理:终结处理和垃圾回收 5.5.1 finalize()的用途何在 5.5.2 你必须实施清理 5.5.3 终结条件 5.5.4 垃圾回收器如何工作 5.6 成员初始化 ...
- 静态成员的初始化顺序遵循它们在类中出现的顺序。 #### 继承时对象的初始化过程 当一个类继承自另一个类时,对象的初始化遵循以下步骤: 1. 超类(基类)的静态成员初始化。 2. 子类的静态成员初始化。 3. ...