zoukankan      html  css  js  c++  java
  • 3、class文件加载过程

    1。加载
    2。链接(检验/准备/解析)

    1/检验过程:检验class的数据格式。
    2/准备过程:创建静态域,并将这些域设为默认值。
    3/解析过程:在一个Java类中会包含对其它。类或接口的形式引用,包括它的父类、所实现的接口、方法的形式参数和返回值的Java类等。解析的过程就是确保这些被引用的类能被正确的找到。解析的过程可能会导致其它的 Java类被加载。

    3。初始化

    在上面的代码中,在初始化的时候,静态域的初始化和静态代码块的执行会从上到
    下依次执行。因此变量X 的值首先初始化成10,后来又被赋值成30;而变量Y 的
    值则被初始化成60。

    二、线程的基本概念
    1、进程:资源的组织单位;
    2、线程:CPU调度的单位;
    3、从上面的说明中,可以得到几条结论:wait/notify/notifyAll 操作需要放在synchronized

    三、Java 垃圾回收机制与引用类型
    1、分配内存
    2、确保被引用的对象的内存不被错误回收
    3、回收不再被引用的对象的内存空间

    服务器端应用可能希望在应用的整个运行时间
    中,花在垃圾回收上的时间总数越小越好。

    Java 垃圾回收机制最基本的做法是分代回收
    年轻世代的内存区域被进一步划分成伊甸园(Eden)和两个存活区(survivor space)。
    伊甸园是进行内存分配的地方,是一块连续的空闲内存区域。

    而对于年老和永久世代的内存区域,则采用的是不同的回收算法,称为“标记-清除-压缩

  • 相关阅读:
    最短路径之spfa
    最短路径之Bellman-Ford——解决负权边
    最短路径之Floyd-Warshall算法
    图上最短路径问题
    它们其实都是图(二分图)
    记忆化结果再利用 进一步探讨递推关系
    leetcode 376. 摆动序列 java
    leetcode 368. 最大整除子集 java
    leetcode 96. 不同的二叉搜索树 java
    leetcode 454. 四数相加 II java
  • 原文地址:https://www.cnblogs.com/yeyongjian/p/9246296.html
Copyright © 2011-2022 走看看