广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州Java初始化块是什么?_北大青鸟IT计算机学校

作者:邓华发布时间:2021-03-31分类:Java技术浏览:988


导读:Java是现在非常主流的编程语言之一,很多人想转行学习IT,首选Java语言。那么,Java初始化块是什么?下面就让我们一起来看看惠州北大青鸟老师是怎么回答的。

Java是现在非常主流的编程语言之一,很多人想转行学习IT,首选Java语言。那么,Java初始化块是什么?下面就让我们一起来看看惠州北大青鸟老师是怎么回答的。

一、实例初始化块

实例初始化块用于初始化类的对象。

一个实例初始化程序只是一个类的代码块,但在任何方法或构造函数之外。

实例初始值设定程序没有名称。它的代码只是放置在一个开放大括号和闭包。

例子

下面的代码展示了如何为Test类声明一个实例初始化器。

注意,实例初始化程序在实例上下文中执行,并且关键字this在实例初始化程序中可用。

class Test {  private int num;  // An instance initializer  {
   this.num = 101;    /* Other code for the instance initializer*/
 }  /* Other code for Test class*/}

二、多重实例初始化

我们可以有一个类的多个实例初始化器。对于我们创建的每个对象,它们都以文本顺序自动执行。

所有实例初始值的代码在任何构造函数之前执行。


下面的代码演示了构造函数和实例初始化函数的执行顺序。

public class Main {
 {
   System.out.println("Inside instance initializer 1.");
 }

 {
   System.out.println("Inside instance initializer 2.");
 }  public Main() {
   System.out.println("Inside  no-args constructor.");
 }  public static void main(String[] args) {
   Main m = new Main();
 }
}

上面的代码生成以下结果。

Inside instance initializer 1.

Inside instance initializer 2.

Inside no-args constructor.

实例初始化程序不能有return语句。

三、静态初始化块

静态初始化块也称为静态初始化器。它类似于实例初始化块。

它用于初始化一个类。每个对象执行一个实例初始化器,而当类定义被加载到JVM中时,只对一个类执行一次静态初始化器。

我们需要在其声明的开头使用static关键字。

我们可以在类中有多个静态初始化器。所有静态初始化器都按文本出现的顺序执行,并在任何实例初始化器之前执行。

以下代码演示了何时执行静态初始化程序。

public class Main {  private static int num;
 {// An instance initializer    System.out.println("Inside instance initializer.");
 }  // A static initializer. Note the use of the keyword static below.  static {
   num = 2014;
   System.out.println("Inside static initializer.");
 }  // Constructor  public Main() {
   System.out.println("Inside constructor.");
 }  public static void main(String[] args) {
   System.out.println("Inside  main() #1.   num: " + num);    // Declare a reference variable of the class    Main si;
   System.out.println("Inside  main() #2.   num: " + num);    new Main();    // Create an object
   System.out.println("Inside  main() #3.   num: " + num);    new Main();// Create another object  }
}

上面的代码生成以下结果。

Java精华初始化块.png

更多Java资讯关注网站动态,或者来惠州北大青鸟新方舟校区了解一下。

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表