Java静态代码块如何影响程序执行顺序及具体作用机制?

2026-05-26 09:220阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1095个文字,预计阅读时间需要5分钟。

Java静态代码块如何影响程序执行顺序及具体作用机制?

在常规情况下,如果有些代码片段需要在项目启动时立即执行,就需要使用静态代码块。这类代码是主动执行的,需要在项目启动时初始化。而有些代码则是在不创建对象的情况下执行的,通常由其他部分触发。

一般情况下,如果有些代码必须在项目启动的时候就执行,需要使用静态代码块。这种代码是主动执行的,需要在项目启动的时候就初始化。

Java静态代码块如何影响程序执行顺序及具体作用机制?

有些代码是在不创建对象的情况下,由其他程序来调用,需要使用静态方法。这种代码是被动执行的。 静态方法在类加载的时候就已经加载,可以用类名直接调用

比如main方法就必须是静态的 这是程序入口

两者的区别就是:静态代码块是自动执行的,而静态方法是被调用的时候才执行的。

区别很简单:

静态代码块,在虚拟机加载类的时候就会加载执行,而且只执行一次;

非静态代码块,在创建对象的时候(即new一个对象的时候)执行,每次创建对象都会执行一次

相同点:都是在JVM加载类时且在构造方法执行之前执行,在类中都可以定义多个,

    一般在代码块中对一些static变量进行赋值。

不同点:静态代码块在非静态代码块之前执行(静态代码块—>非静态代码块—>构造方法)。

阅读全文

本文共计1095个文字,预计阅读时间需要5分钟。

Java静态代码块如何影响程序执行顺序及具体作用机制?

在常规情况下,如果有些代码片段需要在项目启动时立即执行,就需要使用静态代码块。这类代码是主动执行的,需要在项目启动时初始化。而有些代码则是在不创建对象的情况下执行的,通常由其他部分触发。

一般情况下,如果有些代码必须在项目启动的时候就执行,需要使用静态代码块。这种代码是主动执行的,需要在项目启动的时候就初始化。

Java静态代码块如何影响程序执行顺序及具体作用机制?

有些代码是在不创建对象的情况下,由其他程序来调用,需要使用静态方法。这种代码是被动执行的。 静态方法在类加载的时候就已经加载,可以用类名直接调用

比如main方法就必须是静态的 这是程序入口

两者的区别就是:静态代码块是自动执行的,而静态方法是被调用的时候才执行的。

区别很简单:

静态代码块,在虚拟机加载类的时候就会加载执行,而且只执行一次;

非静态代码块,在创建对象的时候(即new一个对象的时候)执行,每次创建对象都会执行一次

相同点:都是在JVM加载类时且在构造方法执行之前执行,在类中都可以定义多个,

    一般在代码块中对一些static变量进行赋值。

不同点:静态代码块在非静态代码块之前执行(静态代码块—>非静态代码块—>构造方法)。

阅读全文