在Java中,有两种初始化块:静态初始化块和非静态初始化块.
静态初始化块:使用static定义,当类装载到系统时执行一次.若在静态初始化块中想初始化变量,那仅能初始化类变量,即static修饰的数据成员.
非静态初始化块:在每个对象生成时都会被执行一次,可以初始化类的实例变量.
非静态初始化块会在构造函数执行时,且在构造函数主体代码执行之前被运行.
1 package com.tiandinet.studyjava;
2
3 public class TestInitiateBlock {
4
5 {
6 System.out.println("In non-static initialization block!");
7 };
8
9 static {
10 System.out.println("In static initialization block!");
11 };
12
13 public TestInitiateBlock() {
14 System.out.println("In Constructor1!");
15 }
16
17 public void show() {
18 System.out.println("In show()!");
19 }
20
21 /**
22 * @param args
23 */
24 public static void main(String[] args) {
25 TestInitiateBlock ti = new TestInitiateBlock();
26 ti.show();
27 }
28
29 }
运行结果:
In
static initialization block!
In non-static initialization block!
In
Constructor1!
In show()!
分享到:
相关推荐
总结起来,Java初始化块是Java中用于对象和类初始化的重要工具,它们在不同场景下提供了一种灵活的方式来控制对象和类的状态。理解初始化块的工作原理对于编写高效且无错误的Java代码至关重要。在编写代码时,应谨慎...
在Java编程语言中,初始化块是程序执行时用于初始化对象或类的重要机制。这里我们将深入探讨两种类型的初始化块:静态初始化块(Static Initializer Block)和对象初始化块(Instance Initializer Block)。这两种...
"Java初始化块及执行过程解析" Java 初始化块是 Java 语言中的一种特殊语法结构,用于对 Java 对象进行初始化操作。初始化块可以分为两种:静态初始化块和普通初始化块。静态初始化块用于对类进行初始化,而普通...
静态初始化块用于在类加载时执行一次的初始化操作,而实例初始化块则在每次创建新对象时执行。这两个块可以用来设置默认值、初始化复杂对象或者执行其他必要的配置。 接下来,我们讨论Java方法。方法是代码的复用...
"Java初始化块详解及实例代码" Java中初始化块是Java语言中的一种特殊的代码块,它可以在类加载或对象创建时执行某些操作。本文将详细介绍Java中初始化块的概念、种类、特点和应用场景。 什么是初始化块 初始化块...
文章目录【Java语言基础】初始化块使用初始化块静态初始化块总结代码 【Java语言基础】初始化块 初始化块又称为代码块。属于类中的第四大成员。本质上是一个方法,它也有方法体,但没有方法名,没有参数,没有返回,...
总之,Java代码的初始化顺序是类加载的必然过程,涉及到静态和实例初始化块、构造函数、成员变量初始化以及继承关系的影响。这个demo是学习和理解这些概念的重要工具,通过实际操作可以加深对Java内存管理和对象生命...
类--初始化块"); 39. } 40. // 构造器 41. public SubClass() { 42. System.out.println("子类--构造器"); 43. } 44. 45. public static void main(String[] args) { 46. new SubClass(); 47. } 48.} 当我们运行这段...
- 静态初始化块(static{}):如果类中存在静态初始化块,该块的代码会在类加载后的准备阶段执行,用于初始化静态变量或执行其他静态设置任务。 - 静态变量的赋值:接着,静态变量会被赋予它们的初始值,这可以是...
类的初始化涉及到多个方面,包括静态成员变量、实例成员变量、静态初始化块、实例初始化块以及构造函数等。本文将详细探讨Java中类的初始化过程及其顺序,并通过具体的代码示例来帮助理解这一过程。 #### 二、基础...
"Java初级视频教程系列之-java初始化"是一套专为初学者设计的教育内容,由经验丰富的IT专家精心录制,旨在帮助学习者掌握Java编程的基础,特别是关于对象初始化的重要概念。 在Java中,初始化是一个关键的步骤,它...
总之,Java类继承初始化顺序涉及到静态和非静态初始化块、构造器的调用以及方法的覆盖。理解这些概念对于编写健壮的、易于维护的Java代码至关重要。在实际编程中,应合理利用继承特性,同时注意避免不必要的复杂性和...
在Java中,类的初始化过程涉及到静态变量的赋值、静态初始化块的执行等。`<clinit>`方法就是JVM在类加载时用于执行这些初始化操作的特殊方法。它在类被首次加载时调用,且只调用一次。在上述代码示例中,`debug....
- **非静态块(实例初始化块)**:在每次创建类的新实例时执行的代码块,用于初始化非静态域。 - **构造函数**:用于初始化新创建的对象的方法。 #### 二、初始化顺序 按照 Java 的规定,以下列出了类初始化的基本...
Java 变量初始化详解 Java 变量初始化是 Java 语言的基础知识点之一,但也往往被学习者所忽略。 Java 变量初始化的时机是指在 Java 语言中变量的初始化过程,包括变量的声明、初始化和赋值的步骤。 Java 变量声明 ...
Java初始化和清理是Java语言中非常重要的两个过程,它们确保了Java程序的正确运行和资源的有效管理。Java的初始化包括类的加载、连接和初始化三个过程,而清理则主要指垃圾回收机制。 首先,Java初始化的主要特性...
Java编程语言中,静态块(static block)和初始化块(instance initialization block)是两种特殊的代码块,它们在程序运行的不同阶段被执行,对于类和对象的初始化有着重要作用。同时,`main`方法是Java程序的入口...
详细介绍了Java的静态成员变量、静态数据块、非静态成员变量和非静态成员变量等初始化顺序
在这个Java示例中,`a` 的值首先被声明时的初始值1设置,然后在静态初始化块中被改为2。`b` 的值在编译时就被确定为3。`c` 的值在实例初始化块中被设置为4,最后在构造器中被覆盖为5。 理解这两种语言中初始化顺序...