当前位置: 首页 > news >正文

沈阳做网站的公司排行5g创业网站建设

沈阳做网站的公司排行,5g创业网站建设,如何做seo搜索引擎优化,国外seo大神点击下方关注我#xff0c;然后右上角点击...“设为星标”#xff0c;就能第一时间收到更新推送啦~~~ Java 源码是如何形成类文件的#xff0c;类文件又是如何加载到虚拟机的#xff0c;类加载有哪些机制和原则呢#xff1f;本文将为大家一一介绍。 1 Java 源码形成类文件… 点击下方关注我然后右上角点击...“设为星标”就能第一时间收到更新推送啦~~~ Java 源码是如何形成类文件的类文件又是如何加载到虚拟机的类加载有哪些机制和原则呢本文将为大家一一介绍。 1 Java 源码形成类文件 1、Helloworld.java 形成 HelloWorld.class 的过程 package jvm; public class HelloWorld { public static void main(String[] args) {System.out.println(HelloWorld);} } 编译操作javac Helloworld.java --- Helloworld.class 命令行编译javac 命令、运行java 命令效果图 查看类文件的字节码javap 命令 HelloWorld.java 编译过程 HelloWorld.java --- 词法分析 --- token 集合 --- 语法分析 --- 语法树/抽象语法树 --- 语义分析 --- 注解抽象语法树 --- 字节码生成 --- HelloWorld.class文件 2 类文件加载到虚拟机类加载机制 1、类使用的生命周期 类从被加载到虚拟机内存中开始直到卸载出内存为止它的整个生命周期包括 7 个阶段加载、验证、准备、解析、初始化、使用和卸载。类加载主要是前 5 个阶段。 加载(Load)查找和导入 class 文件 链接(Link)包括验证、准备和解析三个阶段。 1. 验证(Verify)保证被加载类的正确性包括文件格式验证元数据验证是否符合Java语法规范字节码验证确保不会危害虚拟机安全符号引用验证等。 2. 准备(Prepare)为类的静态变量分配内存并将其初始化为默认值。 3. 解析(Resolve)把类中的符号引用转换为直接引用包括类或接口的解析变量的解析等。 初始化(Initialize)是类加载过程的最后一步对类的静态变量静态代码块执行初始化操作。 3 类加载器以及类加载原则 1、类加载器 启动类加载器BootStrap ClassLoader加载 jdk 的核心类库启动类加载器 Java 代码获取不到 扩展类加载器Extension ClassLoader加载 jre/lib/ext 目录下的类 应用程序类加载器App ClassLoader加载自定义应用程序类和普通 jar 包 自定义类加载器Custom ClassLoader应用程序可以继承 java.lang.ClassLoader类的方式重写它的 findClass 方法实现自己的类加载器以满足一些特殊的要求比如把自己的代码进行加密以防止反编译。 2、JVM 的类加载时机 1、创建类的实例也就是new一个对象的时候 2、访问某个类或接口的静态变量或者对该静态变量赋值的时候 3、调用类的静态方法 4、反射 Class.forName(jvm.HelloWorld) 3、JVM 的类加载机制 全盘负责机制当一个类加载器负责加载某个类时该类所依赖和引用的其他类也将由该类加载器负责加载除非显示使用另外一个类加载器来加载。 双亲委派机制双亲委派就是如果一个类加载器在接到加载类的请求时它首先不会自己尝试去加载这个类而是把 这个请求任务委托给父类加载器去完成依次递归如果父类加载器可以完成类的加载就成功返回只有父类加载器无法完成加载时才自己去加载。双亲委派机制的优势是可以保证 Java 核心类库的类型安全比如 Java中的 Object 类它存放在 rt.jar 之中无论哪一个类加载器要加载这个类最终都是委派给处于模型最顶端的启动类加载器进行加载因此 Object 在各种类加载环境中都是同一个类也就是保证了用户不能自己定义 java.lang.Object 类的情况。 缓存机制保证所有加载过的类都会被缓存当程序中需要使用某个类时类加载器先从缓存区中获取该类只有当缓存区中不存在该类的对象时系统才会读取该类对应的二进制数据并将其转换成类对象存入缓冲区中。这就是为什么修改了代码后必须重新启动才会生效的原因。 4、类加载的原则 检查某个类是否已经加载的顺序是自底向上从Custom ClassLoader 到 BootStrap ClassLoader 逐层检查只要某个 Classloader 已加载就视为已加载此类保证此类只加载一次类加载的顺序是自顶向下也就是从上到下由上层来逐层尝试加载类。 后面将为大家介绍运行时数据区的知识。
http://www.huolong8.cn/news/398168/

相关文章:

  • 平阳门户网站建设wordpress轻论坛主题
  • 合肥专业做公司网站地方门户网站带手机版
  • 做网站用win还是li园区做网站的好处
  • 西安建站模板温州网页制作设计营销
  • 从域名到网站创建个人网站
  • 做第三方seo优化网站seo整体优化步骤怎么写
  • 三种分销渠道成功的网站不仅仅是优化排
  • 有没有做衣服的网站吗制作网页的基本技术标准
  • 广州网站建设信息科技有限公司资深的家居行业网站模板
  • 网站制图软件产品推广计划方案
  • 村建站属于哪个部门靖江做网站的
  • 上海崇明林业建设有限公司网站彩页设计网站
  • logo网站设计图片店面门头设计网站
  • 做网站杭州做网站流程图
  • 上班没事做看什么网站融资网站建设重点
  • 公司网站建设算什么费用品牌运营策略有哪些
  • 自己做图片的网站链接深圳建网站的网络公司
  • 七星彩网站建设网络营销的定义是什么
  • 哈尔滨网站建设 seowordpress主页 摘要
  • 动态域名可以建网站广州网络营销公司有哪些
  • 义乌建设网站专门做特医食品的网站
  • 做百度推广设置网站统计网站改版换域名
  • 临汾市住房城乡建设局网站链接网站怎么做
  • 芜湖建站公司阿里云网站备案流程
  • 家具 东莞网站建设wordpress获取地址栏参数
  • 建设网站物业经理上岗证陈俊华群晖 wordpress外网
  • 做网站做哪个行业好中盛腾龙建设工程有限公司网站
  • 企业内部信息网站如何建设网站搜索引擎优化方法
  • 建设银行常熟支行网站wordpress单页主题制作教程
  • 刷东西网站怎么做wordpress批量上传插件下载