Java--之初始化中---块的概念

一.简介

首先说一下,Java中有哪些代码块.

普通代码块

就是在方法后面使用"{}"括起来的代码片段,不能单独执行,必须调下其方法名才可以执行.
  • 1
  • 2

静态代码块

在类中使用static修饰,并使用"{}"括起来的代码片段,用于静态变量的初始化或对象创建前的环境初始化.
  • 1
  • 2

同步代码块

使用synchronize关键字修饰,并使用"{}"括起来的代码片段.它表示在同一时间只能有一个线程进入到该方法快中,是一种多线程保护机制.
  • 1
  • 2

构造代码块

在类中没与任何的前缀或后缀,并使用"{}"括起来的代码片段.
  • 1
  • 2

它们在类初始化时的顺序:由于synchronize依附方法,不会被初始化

              静态代码块》构造代码块》构造方法


简单的例子:

public class Client {
    {//构造代码块
        System.out.println("执行构造代码块");
    }        public void methodone()    {//synchronized 代码块必须依附于某个方法
        synchronized (Client.class)   
        {  
             for(int i=0;i<len;i++){  
             System.out.print(name.charAt(i));  
         }  
             System.out.println();  
     }  

    public Client() { //构造函数代码块
        System.out.println("执行无参构造函数");
    }
    static {//静态代码块        int i=0; int c=0;
    }

 } 





猜你喜欢

转载自blog.csdn.net/weixin_39609623/article/details/80743210