代码块

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

普通代码块

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

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("主方法");

}

}

总结:

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

Java中的代码块的更多相关文章

  1. 【Java基础】2、Java中普通代码块,构造代码块,静态代码块区别及代码示例

    Java中普通代码块,构造代码块,静态代码块区别及代码示例.Java中普通代码块,构造代码块,静态代码块区别及代码示例 执行顺序:静态代码块>静态方法(main方法)>构造代码块>构 ...

  2. Java 中静态代码块初始化问题测试

    Java 中静态代码块初始化问题测试 原创 情况一:变量是 static final 修饰的"编译期常量",如 public static final String a = &qu ...

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

    //执行顺序:(优先级从高到低.)静态代码块>mian方法>构造代码块>构造方法. 其中静态代码块只执行一次.构造代码块在每次创建对象是都会执行. 1 普通代码块 1 //普通代码块 ...

  4. Java中普通代码块,构造代码块,静态代码块执行顺序

    //执行顺序:(优先级从高到低.)静态代码块>mian方法>构造代码块>构造方法. 其中静态代码块只执行一次.构造代码块在每次创建对象是都会执行. 1 普通代码块 1 //普通代码块 ...

  5. (转)java中静态代码块的用法 static用法详解

    一)java 静态代码块 静态方法区别一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序来 ...

  6. java中静态代码块的用法 static用法详解(转)

    (一)java 静态代码块 静态方法区别一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序 ...

  7. java中的代码块执行顺序

    /* 代码块:在Java中,使用{}括起来的代码被称为代码块. 根据其位置和声明的不同,可以分为 局部代码块:局部位置,用于限定变量的生命周期. 构造代码块:在类中的成员位置,用{}括起来的代码.每次 ...

  8. 关于java中普通代码块、构造代码块与静态代码块

    1.普通代码块 public static void main(String[] args) { /*普通代码块: *直接定义在在方法或语句中出现”{普通代码的执行语句}“的就称为普通代码块. *普通 ...

  9. 【转】java中静态代码块的用法 static用法详解

    原文网址:http://www.cnblogs.com/panjun-Donet/archive/2010/08/10/1796209.html (一)java 静态代码块 静态方法区别一般情况下,如 ...

  10. 【Java基础】Java中的代码块

    什么是代码块 在Java中,用{}括起来的代码称之为代码块. 代码块分类 局部代码块:在局部变量位置且用{}括起来的代码,用于限制局部变量的生命周期. 构造代码块:在类中的成员变量位置并用{}括起来的 ...

随机推荐

  1. asp.net MVC 帮助助手和函数( @helper @functions)

    asp.net Razor 视图具有.cshtml后缀,可以轻松的实现c#代码和html标签的切换,大大提升了我们的开发效率.但是Razor语法还是有一些棉花糖值得我们了解一下,可以更加强劲的提升我们 ...

  2. Request.RequestContext.RouteData.Values获取不到参数值

    Request.RequestContext.RouteData.Values是获取路由配置中参数的值. 如过路由配置是: public static void RegisterRoutes(Rout ...

  3. shell之变量与read

    环境变量 set 环境变量可供shell以外的程序使用 shell变量 env shell变量仅供shell内部使用 set:显示(设置)shell变量 包括的私有变量以及用户变量,不同类的shell ...

  4. 将m个苹果放入n个盘子的问题【转】

    来自:http://blog.csdn.net/qq675927952/article/details/6312255 问题1: m----->相同, n---> 相同,可为空 将m个苹果 ...

  5. Maven相关: An internal error occurred during: "Updating Maven Project". java.lang.NullPointerException

    I solved mine by delete the .settings folder and .project file in the project and then reimport the ...

  6. SVN-钩子祥解

    钩子脚本的具体写法就是操作系统中shell脚本程序的写法,请根据自己SVN所在的操作系统和shell程序进行相应的写作 所谓钩子就是与一些版本库事件触发的程序,例如新修订版本的创建,或是未版本化属性的 ...

  7. S盒

    在密码学中,一个S盒(Substitution-box,置换盒)是对称密钥算法执行置换计算的基本结构.在块密码中,它们通常用于模糊密钥和密文之间的关系——香农的混淆理论.[1] 通常,S-Box接受特 ...

  8. html中select标签获取选中value和text

    $("#id").find("option:selected").text(); //获取Select选择的Text$("#id").val ...

  9. Linux xargs命令

    xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具.它把一个数据流分割为一些足够小的块,以方便过滤器和命令进行处理.通常情况下,xargs从管道或者stdin中读取数据,但是它也能够从 ...

  10. 黄聪:深入理解PHP Opcode缓存原理

    什么是opcode缓存? 当解释器完成对脚本代码的分析后,便将它们生成可以直接运行的中间代码,也称为操作码(Operate Code,opcode).Opcode cache的目地是避免重复编译,减少 ...