第一章:Java 体系结构介绍
Java 体系结构包括的四个独立但相关的技术:
Java 程序设计语言,Java class 文件格式, Java 应用编程接口,Java 虚拟机
Java 面向网络的三大支柱:平台无关性,安全性和网络移动性。
不同的执行引擎:1,由软件实现的虚拟机,最简单的执行引擎就是一次性解释字节码 2,即时编译(第一次被执行的字节码被编译成本地机器代码,编译出的本地机器代码会被缓存起来) 3,自适应优化器(虚拟机只会把那些活动频繁的代码编译成本地代码)。
Java 程序通过调用本地方法和主机进行交互,本地方法保存在动态链接库中,虚拟机装载包含这个本地方法的动态哭,并调用。
一个Java 应用程序可以使用两种类装载器:启动类装载器和用户定义的类装载器。
被装载的类默认情况下只能看到被同一个类装载器装载的别的类,被不同类装载器装载的类存放在不同的命名空间中,它们之间不能互相访问,除非显示的允许这样做。
Java class 文件是可以运行在任何支持Java虚拟机的硬件平台和操作系统上的二进制文件。
Java API是运行库的集合,它提供一套访问主机系统资源的标准方法。运行Java程序时,虚拟机装载程序的class文件所使用的Java API class 文件。由于Java API class 文件调用了本地方法,Java 程序就不需要再调用它们了。
第二章平台无关
本地方法在三种情况下适用:为了使用底层的主机平台的特性,而这个特性不能通过Java API访问;为了访问一个老的系统或者使用一个已有的库,而这个系统或库不是用Java编写的;为了加快程序的性能,而将一段时间敏感的代码作为本地方法实现。
在编写平台独立的Java程序时,还必须遵从两条原则:1,不要依赖及时终结(finalization)来达到程序的正确性 2,不要依赖线程的优先级来达到程序的正确性
第三章 安全
Java提供了一个用户可配置的“沙箱”,在沙箱中可以放置不可靠的Java程序,沙箱对不可靠程序的活动进行了限制。
组成Java沙箱的基本组件:类装载器结构,class文件检验器,内置于Java虚拟机的安全特性,安全管理器和Java API
第四章 网络移动性
Java应用程序从某个类的main()方法开始执行,其他的类在程序需要的时候才动态连接。
class文件被设计的很紧凑。
通过对象序列化和远程方法调用RMI,Java API提供了一个在本地对象模型上扩展而成的分布式对象模型。
Jini提供了一个运行时的基础结构,以允许服务提供者为客户机提供服务,也使得客户机可以找到并访问服务。
第五章 Java虚拟机
如果在同一台计算机上同时运行三个Java程序,将得到三个Java虚拟机实例。每个Java程序都运行于它自己的Java虚拟机实例中。
当程序中所有的非守护线程都终止了,虚拟机实例将自动退出。
当程序运行时,虚拟机会把所有该程序在运行时创建的对象都放到堆中。当每个新线程被创建时,它都将得到他自己的PC寄存器以及一个Java栈。
数据类型分为:基本类型和引用类型。
装载,连接以及初始化
运行时数据区:方法区,堆,Java栈,PC寄存器,本地方法栈
方法区中存放类型信息
Java程序在运行时创建的所有类实例或数组都放在同一个堆中,而一个Java虚拟机实例中只存在一个堆空间,因此所有线程都共享这个堆,而由于一个Java程序都占一个Java虚拟机实例,因而每个Java程序都有它自己的堆空间。
Java栈:Java栈以帧为单位保存线程的运行状态,栈帧由三部分组成:局部变量区,操作数栈和帧数据区
当某个线程调用一个本地方法时候,它就进入了一个全新的不受虚拟机限制的世界。
分享到:
相关推荐
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
西门子224XP十显控触摸屏下的螺杆式空压机工频运行控制策略及程序注释解析,螺杆式空压机工频运行,变频机上用不了!!!使用西门子224xp 十显控触摸屏,程序有注释,可直接用于工程 ,核心关键词:螺杆式空压机;工频运行;变频机;西门子224xp;十显控触摸屏;程序注释;工程使用。,西门子224XP空压机控制程序工频变频切换方案
# 基于Arduino的Tellarium天文模拟系统 ## 项目简介 Tellarium是一个基于Arduino平台的天文模拟系统,旨在通过步进电机驱动行星模型,模拟行星的轨道运动。该项目通过串行通信接收用户指令,并使用DCF77库处理时间信号,以确保行星的运动与真实世界的时间同步。 ## 项目的主要特性和功能 1. 步进电机控制精确控制步进电机,实现行星模型的平滑运动。 2. 串行通信通过串行端口接收用户指令,如设置行星速度、启动或停止电机。 3. DCF77时间信号接收使用DCF77库接收时间信号,确保行星运动与真实时间同步。 4. 日志和调试提供日志输出和调试LED闪烁功能,便于开发者进行调试和问题排查。 5. 时间管理包括获取和设置时间、处理时间字符串等功能,确保系统时间的准确性。 ## 安装使用步骤 1. 硬件准备确保所有必要的硬件已正确连接,包括步进电机、磁铁传感器、Arduino板等。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
内容概要:文章介绍了针对COVID-19的药物再利用的创新方法,这种方法融合了基于文献的知识(LitCovid和CORD-19数据集)及先进的知识图谱补全技术。具体采用了基于神经网络的TransE、RotatE等多种算法预测药物再利用的潜力,并通过开放和封闭的发现模式为预测结果提供合理的机制解释,包括发现模式、准确性分类及定性评估等手段,增强了方法的实用性。研究表明,TransE表现最优,并成功预测并验证了一系列药物作为COVID-19的治疗候选人选。此外,方法不仅适用于COVID-19,还具备应用于其他疾病药物再利用及其他临床问题解决的潜力。此研究为快速高效地推进药物再利用提供了一个新的计算框架。 适合人群:生物医学科研人员,从事药品再利用、人工智能药物筛选的专业研究人员,对生物信息数据分析和处理感兴趣的学者或技术人员。 使用场景及目标:① 利用计算模型预测药物能否被重新应用于新的适应症,尤其是在面对突发公共卫生事件时加快新药物的研发进程。② 对现有药物进行再评价,以发现更广泛、安全、有效的治疗用途,为临床治疗提供依据和理论指导。③ 探讨通过自动化手段发掘药物作用机理的技术路径。 其他说明:作者团队来自多个国家和地区,研究获得了多项国家级基金支持,论文详尽描述了实验细节,并附上了全部代码和数据资源供后续拓展和重复研究使用。
QT 串口源码 串口实例 QT 串口助手代码 (2),含有完整的代码
2025年最新酒店客房部经理考试题答案.docx
# 基于Arduino的陶瓷加热器控制系统 ## 项目简介 这是一个基于Arduino的陶瓷加热器控制系统项目,旨在实现对陶瓷加热器的精确控制,适用于实验室、工业生产等需要精确控温的场合。 ## 项目的主要特性和功能 陶瓷加热器控制通过Arduino板控制陶瓷加热器的开关。 温度获取与转换采用ADC值获取温度,并通过查找表转换为实际温度。 目标温度设置允许用户设置目标温度。 错误检测与处理检测加热器的错误状态,如温度过高或短路等。 调试模式提供调试功能,方便开发者调试和测试。 ## 安装使用步骤 1. 下载并解压项目源码文件。 2. 将解压后的文件复制到Arduino的sketchbook目录中。 3. 连接陶瓷加热器到Arduino板上的指定引脚。 4. 使用USB线连接Arduino板到计算机。 5. 在Arduino IDE中打开项目文件,选择正确的Arduino板型号和端口。 6. 上传代码到Arduino板。
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
CatBoost-shap集成模型:分类任务的解释与可视化Python代码实现,自带数据集,即插即用,全部图形直观展现,CatBoost-shap集成模型用于分类任务,对模型和变量用shap进行解释 Python 代码,自带数据集可以直接运行 所有图所见即所得 ,核心关键词:CatBoost-shap; 分类任务; 模型解释; 变量解释; Python代码; 自带数据集; 直接运行; 图形化结果。,"CatBoost模型SHAP解释器:分类任务图解"
项目均经过测试,可正常运行! 环境说明: 开发语言:java JDK版本:jdk1.8 框架:springboot 数据库:mysql 5.7/8 数据库工具:navicat 开发软件:eclipse/idea
基于西门子S7-1200 PLC与Wincc组态技术的智能路口交通指挥系统解决方案。,No.698 西门子S7-1200 和Wincc组态基于PLC的路口交通指挥系统 ,No.698; 西门子S7-1200; Wincc组态; PLC; 路口交通指挥系统; 交通控制系统。,基于PLC与Wincc组态的西门子S7-1200交通指挥系统
西门子S7-200 PLC控制的灯泡安装工作站系统设计:高效、智能的自动化解决方案,No.662 基于西门子S7-200 PLC的灯泡安装工作站的控制系统设计 ,基于西门子S7-200 PLC; 灯泡安装工作站; 控制系统设计,西门子S7-200 PLC控制灯泡安装站设计 No.662
PHP从入门到精通课程资料+pdf
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
LBM格子玻尔兹曼方法在Matlab中模拟3D气泡上升多相流的应用研究,lbm格子玻尔兹曼方法模拟3D气泡上升多相流 matlab ,LBM;格子玻尔兹曼方法;3D气泡上升;多相流模拟;Matlab,LBM格子玻尔兹曼模拟3D气泡多相流上升过程 Matlab实现
SQL Server 从入门到精通-pdf
"混合储能功率共享系统:基于滑动平均与多通道FFT的功率分配及模糊控制SOC管理策略",混合储能功率共享系统 光伏发出的功率与负载消耗功率的差值即混合储能的功率,将混合储能功率通过滑动平均后剩下的功率差值通过多通道FFT进行二次划分;二次划分得到的低频功率分量与之前的滑动平均得到的成分一起分给蓄电池进行平抑,最后剩下的高频部分交给超级电容进行平抑 soc通过模糊控制进行管理 ,混合储能;功率共享;滑动平均;多通道FFT;低频功率;soc管理;超级电容;蓄电池平抑,混合储能功率管理系统的设计与优化
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
ollama