zoukankan      html  css  js  c++  java
  • 普通代码块、构造块、静态代码块、构造方法浅析

    1、普通代码块:直接在一个方法中或语句中出现的{}被称为普通代码块。

       相同类型的代码块执行顺序为,先定义先执行。

    2、构造块:直接在类中定义的且没有加static关键字的代码块{}称为构造代码块。

        构造块在创建对象时被执行,每次创建对象都会被执行,且构造块的执行顺序

        优先于类构造函数。

    3.静态代码块:在java类中使用static关键字声明的代码块称为静态代码块。静态

      代码块主要用于初始化类,为类的静态属性初始化。有如下特定:

       1)静态代码块不能存在任何方法体内

       2)静态代码块不能直接访问实例变量和实例方法,需通过类的实例对象来访问。

           这与静态方法是一样的

       3)jvm在加载类时,先会执行静态代码块,所以静态代码块优先于主方法执行。

           如果类中包含多个静态代码块,则先定义先执行。每个静态代码块只会执行一次。

    4.无论是普通代码块,构造块,还是静态代码块内的语句,都可以定义变量、调用

      其他方法,使用各种循环语句和控制语句等。

    //==============下面示例==============

     ====类Code====

    class  code{

    {                                                     //1.构造块

    system.out.println("code的构造块");

    }

    static {                                           //2.静态构造块

    system.out.println("code的静态构造块");

    }

    public Code(){                               // 3.构造方法

    system.out.println("code的构造方法");

    }

    }

     ====类Codeblock====

    public class Codeblock{

    {                                                     //1.构造块

    system.out.println("Codeblock的构造块");

    }

    static {                                           //2.静态构造块

    System.out.println("Codeblock的静态构造块");

    }

    public Codeblock(){                               // 3.构造方法

    system.out.println("Codeblock的构造方法");

    }

    public satic void main(String args[]){

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

    new Code();

    new Code();

    new Codeblock();

    new Codeblock();

    }

    }

    ========运行结果========

    Codeblock的静态方法

    Codeblock主方法

    Code的静态方法

    Code的构造块

    Code的构造方法

    Code的构造块

    Code的构造方法

    Codeblock的构造块

    Codeblock的构造方法

    Codeblock的构造块

    Codeblock的构造方法

    请按任意键继续 . . . .

  • 相关阅读:
    PostgreSQL的德哥教程
    pgbench的使用简介
    pg生成日期序列
    在Intellij IDEA 12中Tomcat无法调试
    如何使用命令行来控制IIS服务的启动和停止
    SharePoint Support Engineer 常用技术点
    测试博文写作
    C#数字进制间与字符串类型相互转换
    [转载]INNO Setup 使用笔记
    unity3d 游戏开发引擎
  • 原文地址:https://www.cnblogs.com/xiaowei-blog/p/4080445.html
Copyright © 2011-2022 走看看