广告
返回顶部
首页 > 资讯 > 精选 >java静态代码块、构造代码块、构造方法的执行顺序是怎样的
  • 757
分享到

java静态代码块、构造代码块、构造方法的执行顺序是怎样的

2023-06-28 23:06:23 757人浏览 泡泡鱼
摘要

这篇“java静态代码块、构造代码块、构造方法的执行顺序是怎样的”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“java静态代

这篇“java静态代码块、构造代码块、构造方法的执行顺序是怎样的”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“java静态代码块、构造代码块、构造方法的执行顺序是怎样的”文章吧。

执行顺序是:先执行“静态代码块”,再执行“构造代码块”,最后执行“构造代码块”。静态代码块是类级别的,而构造代码块和构造方法是实例级别的,因而静态代码块先执行;又因构造代码块是独立的,必须依附载体才能运行,因而构造代码块需放到构造方法前。

教程操作环境:windows7系统、java8版、DELL G3电脑。

构造代码块、静态代码块与构造方法是类中三种不同的代码块,那么他们到底有什么区别呢?

一、三种代码块简介

静态代码块:用staitc声明,JVM加载类时执行,仅执行一次

构造代码块:类中直接用{}定义,每一次创建对象时执行。

执行顺序优先级:静态块,main(),构造块,构造方法。

class A{    //构造代码块    {        System.out.println("构造代码块A");    }    //静态代码块    static    {        System.out.println("静态代码块A");    }    //构造方法    public A()    {        System.out.println("构造方法A");    }}

二、三者的执行顺序

为了弄清楚三者的执行顺序,我们对类 A 进行实例化,分别进行单个实例和多个实例的测试

2.1 单个实例

class Demo{    public static void main(String[] args)    {        new A();    }}

java静态代码块、构造代码块、构造方法的执行顺序是怎样的

2.2 多个实例

class Demo{    public static void main(String[] args)    {        new A();        new A();        new A();    }}

java静态代码块、构造代码块、构造方法的执行顺序是怎样的

三、继承体系中的顺序

class B extends A{    //构造代码块    {        System.out.println("构造代码块B");    }    //静态代码块    static    {        System.out.println("静态代码块B");    }    //构造方法    public B()    {        System.out.println("构造方法B");    }}class Demo{    public static void main(String[] args)    {        new B();    }}

java静态代码块、构造代码块、构造方法的执行顺序是怎样的

以上就是关于“java静态代码块、构造代码块、构造方法的执行顺序是怎样的”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网精选频道。

--结束END--

本文标题: java静态代码块、构造代码块、构造方法的执行顺序是怎样的

本文链接: https://www.lsjlt.com/news/321374.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • java静态代码块、构造代码块、构造方法的执行顺序是怎样的
    这篇“java静态代码块、构造代码块、构造方法的执行顺序是怎样的”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“java静态代...
    99+
    2023-06-28
  • Java中静态代码块、构造代码块、构造函数和普通代码块的区别
    目录1、静态代码块①、格式②、执行时机③、静态代码块的作用④、静态代码块不能存在任何方法体中⑤、静态代码块不能访问普通变量2、构造代码块①、格式②、执行时机③、构造代码块的作用3、构...
    99+
    2023-05-19
    Java静态代码块 Java代码块区别
  • java中静态代码块与构造方法执行顺序判断的示例分析
    这篇文章将为大家详细讲解有关java中静态代码块与构造方法执行顺序判断的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。静态代码优先于非静态的代码,是因为被static修饰的成员都是类成员,会随着J...
    99+
    2023-05-30
    java
  • java代码块执行顺序是怎样的
    本文小编为大家详细介绍“java代码块执行顺序是怎样的”,内容详细,步骤清晰,细节处理妥当,希望这篇“java代码块执行顺序是怎样的”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1、类的静态代码块、结构代码块、结...
    99+
    2023-06-30
  • Java浅析代码块与构造块及静态块三者之间的关系
    目录普通代码块(本地代码块)构造块(实例代码块)静态块(静态代码块)他们之间有什么关系呢例子分析普通代码块(本地代码块) 定义在方法里面用{ }括起来的代码块(凡是用{ }括起来都叫...
    99+
    2022-11-13
  • Kotlin构造函数、成员变量和init代码块执行顺序是什么
    今天小编给大家分享一下Kotlin构造函数、成员变量和init代码块执行顺序是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下...
    99+
    2023-07-04
  • java中构造代码块的作用是什么
    java中构造代码块的作用是什么?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Java的特点有哪些Java的特点有哪些1.Java语言作为静态面向对象编程语言的...
    99+
    2023-06-14
  • java代码块的执行顺序是什么
    Java代码块的执行顺序如下: 静态代码块:静态代码块在类加载时执行,并且只执行一次。它用来初始化静态变量或执行一些只需执行一次...
    99+
    2023-10-24
    java
  • Kotlin构造函数、成员变量和init代码块执行顺序实例分析
    本文小编为大家详细介绍“Kotlin构造函数、成员变量和init代码块执行顺序实例分析”,内容详细,步骤清晰,细节处理妥当,希望这篇“Kotlin构造函数、成员变量和init代码块执行顺序实例分析”文章能帮助大家解决疑惑,下面跟着小编的思路...
    99+
    2023-07-04
  • java中代码块的执行顺序是什么
    java中代码块的执行顺序是什么?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。常用的java框架有哪些1.SpringMVC,Spring Web MVC是一种基于Java...
    99+
    2023-06-14
  • Kotlin字节码层探究构造函数与成员变量和init代码块执行顺序
    之前写了一篇文章,从Java语法的角度分析了Kotlin构造函数、成员变量初始化、init代码块三者的执行顺序: Kotlin构造函数与成员变量和init代码块执行顺序详细讲解 这次...
    99+
    2022-11-16
    Kotlin构造函数 Kotlin成员变量 Kotlin init代码块
  • Kotlin构造函数与成员变量和init代码块执行顺序详细讲解
    目录在Kotlin中经常看到主构造函数、成员变量、init代码块(也叫初始化器),它们的执行时机和顺序是什么样的呢?看一下官方的示例: class InitOrderDemo(nam...
    99+
    2022-11-16
    Kotlin构造函数 Kotlin成员变量 Kotlin init代码块
  • Java中的静态代码块是如何执行的
    Java中的静态代码块是如何执行的?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行...
    99+
    2023-05-31
    java ava
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作