`
wangjian1000096
  • 浏览: 2102 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

Java的4种代码块

    博客分类:
  • Java
 
阅读更多

    原以为自己的Java基础还不错,看来,好记性不如烂笔头啊,被一道简单的面试题难住了,面壁去。

    面试题在这里:http://www.iteye.com/topic/1115830

 

一、普通代码块

       直接在一个方法中出现的{}就称为普通代码块,例子程序如下:


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);
   }

}
   在普通代码块中定义的变量只在块中起作用,执行结果如下:
   x=10
   x=100


二、构造代码块

       直接在类中定义的没有加static关键字的代码块{}称为构造代码块,例子程序如下:

public class CodeDemo02{
    public CodeDemo02(){
       System.out.println("========这是构造方法=========");
    }
   //这是构造代码块,而且在new对象时,构造代码块优先构造方法执行
    {
      System.out.println("=========这是构造块!=========");
   }
   public static void main(String[] args){
      new CodeDemo02();
      new CodeDemo02();
   }
}
 

 

三、静态代码块

        使用static关键字声明的代码块称为静态代码块,静态块的主要目的是用来为静态属性初始化,例子程序如下:


public class CodeDemo03
{
    static{
        System.out.println("这是主类中的静态代码块!");
    }
    public static void main(String[] args){
       new Demo();
       new Demo();
       new Demo();
    }
}

class Demo
{
   static{
       System.out.println("这是Demo类中的静态代码块!");
    }
    {
       System.out.println("这是Demo类中的构造块!");
    }
    public Demo(){
       System.out.println("这是构造方法!");
    }
}
 

     静态块优先于主方法的执行,静态块优先于构造方法的执行,而且只执行一次!

四、同步代码块

        同步代码块主要出现在多线程中。

public class Child {
	static Object o;
	static {
		o = new Object();
	}

	public void doto() {
		synchronized (o) {

		}

	}
}
 
分享到:
评论

相关推荐

    Java基础之代码块.docx

    Java基础之代码块 Java 中的代码块是指用一对花括号 {} 包围的代码区域,这些代码块可以...Java 中的代码块有三种:普通语句块、构造块和静态块,每种代码块的执行时机不同,需要根据实际情况选择合适的代码块类型。

    JAVA常用代码块

    JAVA常用代码块 JAVA常用代码块 JAVA常用代码块 JAVA常用代码块 JAVA常用代码块

    eclipse java 代码块折叠插件

    eclipse java 代码块折叠插件,可以用对if、for、while、function 等代码块折叠,类似vs IDE。 使用方法: (1)解压; (2)将 com.cb.eclipse.folding_1.0.6.jar 拷贝到eclipse 安装目录的插件目录(plugins目录)...

    java 代码块折叠插件

    Java 代码块折叠插件是一种增强IDE(集成开发环境)功能的工具,它允许程序员更加高效地管理和阅读源代码。在编程过程中,特别是在处理大型项目时,代码的组织和可读性至关重要。代码块折叠功能使得开发者能够隐藏...

    java 静态代码块通过类加载器获取资源文件例子

    在Java编程中,静态代码块(Static Block)和类加载器(Class Loader)是两个重要的概念,它们在软件开发中有着广泛的应用。本案例聚焦于如何利用静态代码块结合类加载器来高效地获取资源文件,尤其是属性配置文件。...

    Java的静态代码块、非静态代码块、构造函数

    非静态代码块可以包含任意Java代码,但通常用于设置实例变量的初始值。比如: ```java public class MyClass { int value; { value = 5; // 非静态代码块,初始化实例变量 } public MyClass() { // 这里可以...

    java 代码块与静态代码块加载顺序

    4. 子类实例代码块 在上面的实例代码中,我们可以看到 `User` 类的加载顺序按照以下顺序执行: 1. 首先执行静态代码块 `static { ... }`,打印出 "调用userSay静态方法" 和 "进入静态构造代码块"。 2. 其次执行...

    java静态代码块与非静态代码块.doc

    静态代码块是 Java 中的一种特殊的代码块,它是静态的,意思是说它是属于类的,而不是属于对象的。静态代码块是在类加载时自动执行的,它们是 JVM 在加载类时执行的代码。静态代码块通常用于初始化一些项目最常用的...

    java静态代码块与非静态代码块参照.pdf

    Java 中的代码块可以分为静态代码块和非静态代码块两种,两者的执行时机和作用域不同。本文将通过实例代码和详细解释,阐述 Java 静态代码块与非静态代码块的区别和应用场景。 静态代码块 静态代码块是指使用静态...

    java代码块测试

    首先,让我们理解Java的四种主要代码块: 1. **局部代码块**:这些代码块定义在方法内部,仅在该方法调用时执行。它们通常用来限制变量的作用域,提高内存效率。 2. **构造器代码块**或**实例初始化块**:当创建类...

    Java基础练习代码

    函数定义了完成特定任务的代码块,通过参数传递数据,返回结果。在练习中,理解参数、返回值、重载和递归函数的概念非常重要。 异常处理是Java中的另一个重要主题。通过try-catch-finally结构,可以捕获并处理程序...

    Java 普通代码块静态代码块执行顺序(实例讲解)

    首先,我们需要明白两种类型的代码块: 1. 静态代码块(Static Block):这些代码块在类加载时执行,用于初始化类级别的变量或执行一些仅需执行一次的设置操作。静态代码块与类相关联,而不是类的实例。 2. 普通...

    java中的static变量,方法,代码块

    ### Java中的Static概念详解 在Java编程语言中,`static`关键字扮演着极其重要的角色,它主要用于声明类的成员变量、方法以及代码块为静态。...理解这些概念,对于编写高效、可维护的Java代码至关重要。

    wps代码块插件wps-syntaxhighlighter

    wps代码块插件

    静态代码块

    静态代码块的主要应用场景包括但不限于以下几种: 1. **初始化静态变量**:当需要对类中的静态成员进行初始化时,通常会使用静态代码块。例如: ```java public class MyClass { static int myVar; static { ...

    Java 中普通代码块,构造代码块,静态代码块区别及代码示例

    Java编程语言中有三种类型的代码块,它们分别是普通代码块、构造代码块和静态代码块,每种都有其特定的用途和执行顺序。 1. **普通代码块**: 普通代码块(也称为局部代码块)是在方法或者类的成员变量声明之间...

    Java构造代码块,静态代码块原理与用法实例分析

    Java构造代码块和静态代码块是Java中两种特殊的代码块,它们的运行机制和应用场景不同,下面将详细介绍Java构造代码块和静态代码块的原理、用法和注意事项。 一、局部代码块 局部代码块是指在某个特定的范围内定义...

    Java静态代码块作用及执行顺序解析

    Java静态代码块是Java语言中的一种特殊代码块,它们在类加载的时候执行,且只执行一次。它们通常用来初始化静态变量、设置静态变量的初始值等。静态代码块的作用域是整个类,而不是某个对象实例。 静态代码块的执行...

    Java经典代码 Java经典代码

    4. **多线程**:Java内置了对多线程的支持,经典代码可能涉及Thread类的使用,线程同步(synchronized关键字,wait/notify机制),以及ExecutorService和Future接口的高级用法。 5. **IO流**:Java的IO流系统强大而...

    用java写的代码雨

    Java可以使用Timer类或者Swing Timer来定时更新屏幕,使代码块不断地移动。通过在每次触发时更新代码的位置,我们可以创造出连续下降的视觉效果。 4. **字符串处理**:为了模拟代码,我们需要生成或加载一系列看...

Global site tag (gtag.js) - Google Analytics