Java虚拟机规范(Java SE 8) 第一章,基于kotlin的android开发实例

1.4、说明

1.5、反馈


1.1、简史

======

Java语言是一门通用的、面向对象的、支持并发的程序语言。它的语法与C和C++语言非常相似,但隐藏了C和C++中许多复杂、深奥及不安全的语言特性。Java平台最初用于解决基于网络的消费类设备上的软件开发问题,它在设计上就考虑到要支持部署在不同架构的主机上,并且不同组件之间可以安全地交互。面对这些需求,编译出来的本地代码必须解决不同网络间的传输问题,并能够运行在各种客户端上,而且还要是客户端确信这些代码是安全的。

伴随着万维网的盛行发生了一些十分有趣的事情:Web浏览器允许数以百万级的用户共同在网上冲浪,以及通过很简单的方式访问丰富多样的内容。用户冲浪所使用的设备并不是其中的关键,它们仅仅是一种媒介,无论及其的性能如何,无论使用高速网络还是慢速的modem(调制解调器),用户总能看到并听到同样的内容。

Sun公司的HotJava浏览器是世界上第一款展现出Java语言某些有趣特性的浏览器,它允许把Java代码内嵌入HTML页面。显示HTML页面时,这些Java代码也会一并下载至浏览器中。而在浏览器获取这些代码之前,它们已经过严谨地检查以保证它们是安全的。与HTML语言一样,这些Java代码与网络和主机是完全无关的,无论代码来自哪里,在哪台机器上执行,它们执行时都能表现出一致的行为。

带有Java技术支持的网页浏览器将不再受限于它本身所提供的功能。浏览网页的用户可以放心地假定在他们机器上的动态内容不会损害其机器。软件开发人员编写一次代码,程序就可以运行在所有支持Java运行时环境的机器之上。

1.2、Java虚拟机

===========

Java虚拟机是整个Java平台的基石,是Java技术用以实现硬件无关与操作系统无关的关键部分,是Java语言生成极小体积的编译代码的运行平台,是保障用户机器免于恶意代码损害的屏障。

Java虚拟机可以看做一台抽象的计算机。如同真实的计算机那样,它有自己的指令集以及各种运行时内存区域。使用虚拟机来实现一门程序设计语言是相当常见的,业界中流传最为久远的虚拟机可能就是UCSD Pascal的P-Code虚拟机。

第一个Java虚拟机的原型机是由Sun Microsystems公司实现的,它用在一种类似PDA(Personal Digital Assistant,俗称掌上电脑)的手持设备上,以仿真实现Java虚拟机指令集。时至今日,Oracle已将许多Java虚拟机实现应用于移动设备、台式机、服务器等领域。但Java虚拟机并不局限于特定的实现技术、主机硬件和操作系统。Java虚拟机也不局限于特定的代码执行方式,它虽然不强求使用解释器来执行程序,但是也可以通过把自己的指令集编译为实际CPU的指令来实现。它可以通过微代码(microcode)来实现,甚至可以直接在CPU中实现。

Java虚拟机与Java语言并没有必然的联系,它只与特定的二进制文件格式—class文件格式所关联。class文件包含了Java虚拟机指令集(或者称为字节码(bytecode))和符号表,以及其他一些辅助信息。

基于安全方面的考虑,Java虚拟

《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享

机在class文件中施加了许多强制性的语法和结构化约束,凡是能用class文件正确表达出来的编程语言,都可以放在Java虚拟机里面执行。由于它是一个通用的、机器无关的执行平台,所以其他语言的实现者都可以考虑将Java虚拟机作为那些语言的交付媒介。

本书所说的Java虚拟机与Java SE 8平台相兼容,而且支持由本书所定义的Java编程语言。

1.3、各章节概要

=========

  • 第2章概览Java虚拟机整体架构。
Java核心技术系列:Java虚拟机规范Java SE 8版)》由Oracle官方发布,Java虚拟机技术创建人撰写,国内资深Java技术专家翻译。书中基于全新Java SE 8,完整且准确地阐述Java虚拟机规范,是深度了解Java虚拟机Java语言实现细节的必读之作。   《Java核心技术系列:Java虚拟机规范Java SE 8版)》共分7章。第1章从宏观的角度介绍了Java虚拟机Java的关系及发展历程;第2章概述Java虚拟机的整体架构,包括class文件格式、数据类型、原始类型、引用类型、运行时数据区、栈帧、浮点算法、异常等,这对理解本书后面的内容有重要帮助;第3章详述如何将Java语言编写的程序转换为Java虚拟机指令集,涉及常量、局 部变量、控制结构、算术运算、参数接收、方法调用、数组、操作数栈、异常处理、同步与注解等;第4章深入分析用来表示编译后的类和接口的class文件格式;第5章定义Java虚拟机启动以及类与接口的加载、链接和初始化过程;第6章阐释并列举Java虚拟机指令集;第7章提供一张以操作码值为索引的Java虚拟机操作码助记符表。   《Java核心技术系列:Java虚拟机规范Java SE 8版)》完整而准确地阐释了Java虚拟机各方面的细节,围绕Java虚拟机整体架构、编译器、class文件格式、加载、链接与初始化、指令集等核心主题对Java虚拟机进行全面而深入的分析,深刻揭示Java虚拟机的工作原理。同时,书中不仅完整地讲述了由Java SE 8所引入的新特性,例如对包含默认实现代码的接口方法所做的调用,还讲述了为支持类型注解及方法参数注解而对class文件格式所做的扩展,并阐明了class文件中各属性的含义,以及字节码验证的规则。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值