zoukankan      html  css  js  c++  java
  • 类加载时类的初始化和创建实例时的初始化顺序

    1.类加载时类的初始化和创建实例时的初始化顺序

    1、虚拟机在首次加载Java类时,会对静态初始化块、静态成员变量、静态方法进行一次初始化
     2、只有在调用new方法时才会创建类的实例
     3、类实例创建过程:按照父子继承关系进行初始化,首先执行父类的初始化块部分,然后是父类的构造方法;再执行本类继承的子类的初始化块,最后是子类的构造方法
     4、类实例销毁时候,首先销毁子类部分,再销毁父类部分

    JAVA类首次装入时,会对静态成员变量或方法进行一次初始化,但方法不被调用是不会执行的, 静态成员变量和静态初始化块级别相同,非静态成员变量和非静态初始化块级别相同。

     test类加载的时候首先进行静态成员初始化,之后进行静态代码块初始化,x=10,x=10+5,x=15/3

     test类加载的时候首先进行静态成员初始化,之后进行静态代码块初始化,x=10,x=10+5,x=15/3

     test类加载的时候首先进行静态成员初始化,之后进行静态代码块初始化,x=10,x=10+5,x=15/3

    2.多线程操控共享资源采用锁的机制,与数据库的锁机制一样。

    3.锁,分为读锁,和写锁。

  • 相关阅读:
    字符编码笔记:ASCII,Unicode和UTF8(转)
    如何让vs2005的网站编译成一个DLL
    全力奔跑
    工作心得之再谈“表现”
    IT外企那点事[转载]
    直面奋斗
    C#图片水印代码整理
    常用js代码
    一个很有趣的程序员等级考试题求循环小数
    String.Format(字符串输出格式)
  • 原文地址:https://www.cnblogs.com/panxuejun/p/5947811.html
Copyright © 2011-2022 走看看