美文网首页
类的加载和对象的创建过程

类的加载和对象的创建过程

作者: 机器不能学习 | 来源:发表于2018-09-28 17:42 被阅读0次

类的加载:

类的加载路线差不多是这样的:

加载->链接(验证->准备->解析)->初始化->使用->卸载

加载:会根据类是否有条件加载进行加载。一般分为五个条件:1.使用new,调用了类static变量或者是方法  2.使用反射   3.一个类初始化时先初始化其父类  4.运行主类(main)   5.动态语言

有几个情况不会加载:调用父类的static变量或方法,子类不会加载;被动引用不会加载如(Student[] j=new Student[10]);虽然是静态但是用final修饰的常量不加载该类

加载后:通过全限名(包名+类名)找到该类获取其二进制文件  ->  将二进制文件变为方法区中的数据结构 -> 生成一个代表此类的class文件 作为访问入口

链接:验证其是否为java识别文件,并对数据类型等进行检验;为类数据进行内存分配并赋初始值;把符号引用变为直接引用

初始化:初始化过程是执行类构造器<clinit>的执行过程。它会为静态变量赋值,并执行静态代码块。该过程是一个同步过程,单例模式就是利用其特点,在这个过程中创建对象

具体见《深入虚拟机》


对象的创建过程:

1.对象创建时,虚拟机会在堆中给类的实例变量和从父类继承的实例变量分配内存,并且默认初始值

2.执行实例变量和实例代码块

3.执行构造函数

重点讲一下构造函数:

在执行构造函数的时候,先要执行超类的构造函数。知道到达object再返回。

几个题

https://blog.csdn.net/justloveyou_/article/details/72466416

https://blog.csdn.net/justloveyou_/article/details/72466105

相关文章

  • 《深入理解Java虚拟机》学习笔记(二)(Java对象的创建、内

    对象 对象创建 对象创建的过程 类加载过程包括加载、验证、准备、解析、初始化、运行和卸载 名次解释 指针碰撞:Ja...

  • Java类加载机制和对象创建过程

    Java类加载机制和对象创建过程 1、类加载 类加载的时机 ​ 类加载,即虚拟机加载.class文件。什么时候虚拟...

  • 类加载过程和对象创建过程

    类加载过程 首先 首先,jvm在执行时,遇到一个新的类时,会到内存中的方法区去找class文件,如果找到就直接拿来...

  • 深入理解Java虚拟机读书笔记 七

    类加载过程 类对象和普通对象是不同的,类对象是在类加载的时候完成的,是jvm创建的并且是单例的,作为这个类和外界交...

  • 类的加载和对象的创建过程

    类的加载: 类的加载路线差不多是这样的: 加载->链接(验证->准备->解析)->初始化->使用->卸载 加载:会...

  • Java基础 (20) 类加载

    1)类加载机制谈谈对ClassLoader(类加载器)的理解2)JVM加载时机与加载过程3)对象创建过程 一. C...

  • 类加载过程

    创建类加载过程 将创建对象所属类加载到方法区  如果对应类有父类,将先加载父类  修饰的静态变量随着类的加载进方法...

  • 2019-08-18

    创建对象的过程 ①类加载检查: JVM将类加载过程分为五个步骤: 1) 装载:查找并加载类的二进制数据 ; 2)...

  • java对象的创建过程是什么

    java对象的创建过程是什么 java对象的创建过程: 类加载检查-->分配内存-->初始化零值-->设置对象头-...

  • Java对象

    对象创建 类加载 首先jvm会判断这个类是否已经被加载、解析和初始化,如果没有就进行相应的类加载过程 分配空间 分...

网友评论

      本文标题:类的加载和对象的创建过程

      本文链接:https://www.haomeiwen.com/subject/xtbpoftx.html