一、Java中的4种代码块
1. 普通代码块
直接在一个方法中出现的{}就称为普通代码块,例子程序如下:
public class CodeDemo01 {
public static void main(String[] args) {
// 普通代码块
{
int x = 10;
System.out.println("x=" + x);
}
int x = 100;
System.out.println("x=" + x);
}
}
2. 构造代码块
直接在类中定义的没有加static关键字的代码块{}称为构造代码块,例子程序如下:
public class CodeDemo02 {
public CodeDemo02() {
System.out.println("========这是构造方法=========");
}
// 这是构造代码块,而且在new对象时,构造代码块优先构造方法执行
{
System.out.println("=========这是构造块!=========");
}
public static void main(String[] args) {
new CodeDemo02();
}
}
3. 静态代码块
使用static关键字声明的代码块称为静态代码块,静态块的主要目的是用来为静态属性初始化,例子程序如下:
public class CodeDemo03 {
static {
System.out.println("这是主类中的静态代码块!");
}
public static void main(String[] args) {
new Demo();
}
}
class Demo {
static {
System.out.println("这是Demo类中的静态代码块!");
}
{
System.out.println("这是Demo类中的构造块!");
}
public Demo() {
System.out.println("这是构造方法!");
}
}
静态块优先于主方法的执行,静态块优先于构造方法的执行,而且只执行一次!
4. 同步代码块
同步代码块主要出现在多线程中。
二、举例
准确说块是一个作用域,就是里面的变量之类的数据的作用范围。
其中,static{}块中的语句是属于类的本身,不属于类中的任何方法,所以在类加载的时候就开始执行。
非静态块中的变量在{ }外是不可见的。
看以下一个例子,仔细分析为什么有这样的结果:
public class TestSegment {
public void m() {
System.out.println("mmmm");// 不调用时,不能自动执行
}
public static void main(String[] args) {
System.out.println("main");
}
static {// 静态块
{ // 非静态块
int i = 11111; // 此处i不影响括号外界的i
System.out.println("ddd" + i);
}
int i = 222222; // 在此i与前面不重名
System.out.println("sss" + i);
}
}
输出结果:
ddd11111
sss222222
main
分享到:
相关推荐
JAVA常用代码块 JAVA常用代码块 JAVA常用代码块 JAVA常用代码块 JAVA常用代码块
Java 中的代码块是指用一对花括号 {} 包围的代码区域,这些代码块可以出现在不同的位置,执行时机也不同。下面对代码块的种类、执行时机和运行顺序进行详细的解释。 普通语句块 普通语句块是指写在方法中的代码块...
eclipse java 代码块折叠插件,可以用对if、for、while、function 等代码块折叠,类似vs IDE。 使用方法: (1)解压; (2)将 com.cb.eclipse.folding_1.0.6.jar 拷贝到eclipse 安装目录的插件目录(plugins目录)...
Java面向对象编程中的类成员之一是代码块,这部分内容主要探讨了Java中代码块的概念、分类、用途以及执行时机。代码块在Java中扮演着初始化类或对象成员变量的角色,特别是在需要复杂计算或获取外部信息来设定初始值...
在Java编程语言中,了解代码块的执行顺序对于编写高效且无错的代码至关重要。这里我们将深入探讨Java中的普通代码块(实例初始化块)和静态代码块的执行顺序,并通过实例来阐述这一概念。 首先,我们需要明白两种...
下面我们将详细探讨Java中代码块的执行顺序,包括静态属性、非静态属性、静态代码块、非静态代码块以及构造函数。 首先,让我们回顾一下结论: 1. 当创建一个类的实例时,首先会执行类中的静态属性和静态代码块,...
在这个静态代码块中,我们加载了"app.properties"文件,并将其中的属性设置为系统的环境变量,这样在整个应用生命周期中,这些配置都是可用的。 总之,通过Java的静态代码块和类加载器,我们可以有效地管理和加载...
Java 代码块折叠插件是一种增强IDE(集成开发环境)功能的工具,它允许程序员更加高效地管理和阅读源代码。在编程过程中,特别是在处理大型项目时,代码的组织和可读性至关重要。代码块折叠功能使得开发者能够隐藏...
Java 中的静态代码块和非静态代码块是两个重要的概念,它们在 Java 中的应用非常广泛。下面我们来详细介绍这两个概念。 静态代码块 静态代码块是 Java 中的一种特殊的代码块,它是静态的,意思是说它是属于类的,...
静态代码块中的代码在类加载时自动执行,输出结果为“父类的静态代码块在执行 a=10”。这说明静态代码块确实是在类加载时自动执行的。 非静态代码块 非静态代码块是指没有使用静态关键字修饰的代码块,属于实例...
Java 代码块是指在类中使用大括号 `{}` 包围的代码块,这些代码块可以出现在类的任何位置,包括构造函数、静态代码块、实例代码块等。Java 代码块的执行顺序取决于其所在的位置和上下文环境。 在上面的实例代码中,...
本文将深入探讨`static`在变量、方法和代码块中的应用,通过示例和解释帮助读者更深刻地理解其功能与特性。 #### 1. Static变量 `static`变量,亦称为静态变量或类变量,与实例变量相对。其最显著的特点在于,无论...
4. **finally代码块**:用于异常处理,无论是否抛出异常,finally块中的代码总会被执行。这对于确保资源清理(如关闭文件流)至关重要。 接下来,我们将关注Struts2框架,这是一个流行的Java Web开发框架,它基于...
Java静态代码块是Java语言中的一种特殊代码块,它们在类加载的时候执行,且只执行一次。它们通常用来初始化静态变量、设置静态变量的初始值等。静态代码块的作用域是整个类,而不是某个对象实例。 静态代码块的执行...
非静态代码块可以包含任意Java代码,但通常用于设置实例变量的初始值。比如: ```java public class MyClass { int value; { value = 5; // 非静态代码块,初始化实例变量 } public MyClass() { // 这里可以...
静态代码块中只能修改类变量。 例如: ``` class Person{ static String gender; int age; static { System.out.println("静态代码块执行完成"); gender="男";//更改的变量只能是类变量 } Person(){ System...
wps代码块插件
"Java经典代码"通常指的是在Java编程中常见的、实用的、经过时间检验的代码片段,这些代码可以解决常见问题,或者展示了一些核心概念和技术。在这个Java项目案例导航源代码的压缩包中,我们可以期待找到各种各样的...
java中的构造代码块和构造函数.pdf
在Java编程中,源代码通常以`.java`为扩展名,经过Java编译器的处理,会被转化为字节码(`.class`文件),然后由Java虚拟机执行。 Java源代码的知识点涵盖了多个方面: 1. **基本语法**:Java源代码遵循特定的语法...