Java代码块
一.在Java中,使用”{}”括起来的代码称为代码块,代码块可以分为以下四种:
1.普通代码块:就是类中方法的方法体
public void xxx(){
//code
}
2.构造块:用{}裹起来的代码片段,构造块在创建对象时会被调用,每次创建对象
时都会被调用,并且优先于类构造函数执行。
{
//code
}
3.静态块:用static{}裹起来的代码片段,只会被执行一次(第一次加载此类时执行,比如说用Class.forName("")加载类时就会执行
static block),静态块优先于构造块执行。
static{
//code
}
4.同步代码块:使用synchronized(obj){}裹起来的代码块,在多线程环境下,对共享数据进行读写操作是需要互斥进行的,否则
会导致数据的不一致性。常见的是synchronized用来修饰方法,其语义是任何线程进入synchronized需要先取得对象锁
如果被占用了,则阻塞,实现了互斥访问共享资源。而synchronized也是有代价的。
一个常见的场景是,一个冗长的方法中,其实只有一小段代码需要访问共享资源,这时使用同步块,就只将这小段代码
裹在synchronized block,既能够实现同步访问,也能够减少同步引入的开销。
synchronized(obj){
//code
}
二.测试代码
package cn.edu.test;
class A {
{
System.out.println("构造块");
}
static {
System.out.println("static块");
}
public A() {
System.out.println("构造函数A()");
}
}
public class Test {
public static void main(String[] args) {
A a1 = new A();
A a2 = new A();
}
}
分享到:
相关推荐
Java 代码块折叠插件是一种增强IDE(集成开发环境)功能的工具,它允许程序员更加高效地管理和阅读源代码。在编程过程中,特别是在处理大型项目时,代码的组织和可读性至关重要。代码块折叠功能使得开发者能够隐藏...
eclipse java 代码块折叠插件,可以用对if、for、while、function 等代码块折叠,类似vs IDE。 使用方法: (1)解压; (2)将 com.cb.eclipse.folding_1.0.6.jar 拷贝到eclipse 安装目录的插件目录(plugins目录)...
Java代码块测试是软件开发过程中一个重要的环节,它主要用于验证代码的功能是否按预期工作。JUnit是Java编程语言中最常用的单元测试框架,它为开发者提供了一种简洁、高效的测试工具,可以编写可重复运行的测试用例...
Java 代码块与静态代码块加载顺序详解 Java 代码块与静态代码块加载顺序是 Java 语言中一个重要的概念,理解这两个概念对于编写高效、可靠的 Java 代码至关重要。本文将详细介绍 Java 代码块与静态代码块加载顺序的...
在Java编程语言中,代码块是执行特定任务的语句集合,它们可以是局部的、实例的、静态的,或者用于异常处理。本主题将深入探讨Java中的代码块及其在Struts2框架中的应用。 首先,让我们理解Java的四种主要代码块: ...
Java代码块与代码加载顺序原理详解 Java代码块是Java语言中的一种基本结构单元,用于组织代码,控制变量的生命周期和作用域。本文将详细介绍Java代码块的类型、特点、使用方法和加载顺序原理。 一、代码块的类型 ...
wps代码块插件
JAVA常用代码块 JAVA常用代码块 JAVA常用代码块 JAVA常用代码块 JAVA常用代码块
//获取文件名 File in = new File("文件地址"); String fileName = in.getName(); String name = fileName.substring(fileName.lastIndexOf(".")+1); 等等
Java基础之代码块 Java 中的代码块是指用一对花括号 {} 包围的代码区域,这些代码块可以出现在不同的位置,执行时机也不同。下面对代码块的种类、执行时机和运行顺序进行详细的解释。 普通语句块 普通语句块是指...
而将Java代码整理后存入有道云笔记的过程,既可以帮助开发者整理学习和工作中的代码,也能便于和其他开发者分享交流。 在这个过程中,首先需要使用一个能够处理和格式化代码的工具,如在线代码高亮工具,它能够将...
"java代码块之简易qq登录界面及按钮颜色设置代码" 本文主要介绍了java代码块之简易qq登录界面及按钮颜色设置代码,具有一定参考价值,需要的朋友可以了解下。本文主要分享了关于简洁版qq登录界面及按钮颜色设置的...
在Java编程中,静态代码块(Static Block)和类加载器(Class Loader)是两个重要的概念,它们在软件开发中有着广泛的应用。本案例聚焦于如何利用静态代码块结合类加载器来高效地获取资源文件,尤其是属性配置文件。...
Java 静态代码块与非静态代码块 Java 中的静态代码块和非静态代码块是两个重要的概念,它们在 Java 中的应用非常广泛。下面我们来详细介绍这两个概念。 静态代码块 静态代码块是 Java 中的一种特殊的代码块,它是...
Java 静态代码块与非静态代码块详解 Java 中的代码块可以分为静态代码块和非静态代码块两种,两者的执行时机和作用域不同。本文将通过实例代码和详细解释,阐述 Java 静态代码块与非静态代码块的区别和应用场景。 ...
非静态代码块可以包含任意Java代码,但通常用于设置实例变量的初始值。比如: ```java public class MyClass { int value; { value = 5; // 非静态代码块,初始化实例变量 } public MyClass() { // 这里可以...
- **JSP Scriptlet**:`<% code %>`,允许在JSP页面中插入完整的Java代码块,这些代码会被插入到生成的_servletService方法中。 - **JSP声明**:`! code %>`,用于声明变量或方法,它们会被添加到生成的Servlet类...
### Java中的Static概念详解 在Java编程语言中,`static`关键字扮演着极其重要的角色,它主要用于声明类的成员变量、方法以及代码块为静态。...理解这些概念,对于编写高效、可维护的Java代码至关重要。
Markdown语法及快捷键
在Java编程语言中,了解代码块的执行顺序对于编写高效且无错的代码至关重要。这里我们将深入探讨Java中的普通代码块(实例初始化块)和静态代码块的执行顺序,并通过实例来阐述这一概念。 首先,我们需要明白两种...