Java中的代码块

代码块

  • 普通代码块
  • 构造代码块
  • 静态块
  • 同步代码块

普通代码块

为了在方法里面编写过多的变量,防止变量重复,可以用代码块进行隔离。

package org.lyk.main;

 

public class Main

{

     public static void main(String[] args)

     {

           {

                int num = 3;

                System.out.println(num);

           }

           int num = 3;

           System.out.println(num);

     }

}

 

构造代码块

如果现在将一个代码块写在了一个类里面,那么该代码块成为构造块。

  • 构造块优先于构造方法执行
  • 如果产生多次对象,那么构造块代码每次都会执行
  • 一般说来,构造块无实际意义

package org.lyk.entities;

 

public class Book

{

     private String title;

     private float price;

      

     public Book(String title, float price)

     {

           super();

           this.title = title;

           this.price = price;

           System.out.println("2.构造方法");

     }

    

     {

           System.out.println("1. 构造块");

     }

}

 

 

静态块

如果一个代码块使用了static进行修饰的话,那么就成为静态块。

静态块的使用分为两类:

在非主类使用

静态块优先于构造块执行,不管有多少个实例化对象,静态块只执行一次。其作用是为类中的static变量初始化。

package org.lyk.entities;

 

public class Book

{

     static int totalCount ;

     private String title;

     private float price;

      

     public Book(String title, float price)

     {

           super();

           this.title = title;

           this.price = price;

           System.out.println("2.构造方法");

     }

    

     static

     {

           System.out.println("1. 静态块");

           totalCount=0;

     }

}

 

 

主类中使用

静态块将优先于主方法执行。

package org.lyk.main;

 

 

public class Main

{

     static

     {

           System.out.println("主方法中的静态块");

     }

     public static void main(String[] args)

     {

           System.out.println("主方法");

     }

}

 

总结:

代码块在开发中能不用就别用。但如果非要使用,那么唯一好用的就是静态块。

posted on 2016-09-19 13:05  kuillldan  阅读(185)  评论(0编辑  收藏  举报