java for mac 10.10_jre10 Mac版下载 Java SE Runtime Environment(JRE 10) for Mac V10.0.0 X64 苹果电脑版 下载-脚本之...

本文介绍了Java SE Runtime Environment 10 for Mac(jre 10 Mac),它是运行JAVA程序所需的环境集合,包括JVM和核心类库。JRE与JDK的区别在于,JRE用于运行已编译的Java程序,而JDK则包含编译器等开发工具。此外,文章还探讨了JRE的安装、功能以及与.NET全局程序集缓存的对比。
摘要由CSDN通过智能技术生成

Java SE Runtime Environment 10 for Mac简称jre 10 Mac,是一款运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库,有时候运行某些软件的时候是要用到JRE10,本站为大家提供了jre-10_osx-x64_bin.dmg下载地址,欢迎有需要的朋友们前来下载使用。

JRE为JavaRunTimeEnvirment的简称,JavaRuntimeEnvironment(包括JavaPlug-in)是Sun的产品,包括两部分:JavaRuntimeEnvironment和JavaPlug-inJavaRuntimeEnvironment(JRE)是可以在其上运行、测试和传输应用程序的Java平台。它包括Java虚拟机、Java平台核心类和支持文件。它不包含开发工具--编译器、调试器和其它工具。

jre与jdk的区别:

jre就是运行java开发出的程序用的!如果要进行java开发需要安装jdk!!也就是说jre只能运行已经写好的程序,而jdk负责编译等开发工作!!

安装jdk中包含的jre和Java SE Runtime Environment这个jre有区别?

没有区别的,java之所以能跨平台,就是在jre的层次上屏蔽了不同系统的差异。如果只是用作运行JAVA软件的话,单下JRE就可以了,如果是开发JAVA程序,只需要下载JDK就可以,因为JDK中含有jre,而不需要再单下jre了。

软件功能

1、共享类库需要在GAC(Global Assembly Cache)中注册,注册过程比较复杂,首先要用工具生成公开/私有密钥对,然后结合密钥和类库版本号连编,最后使用工具注册到GAC中好以后,会被放在"C:Winntassemblygac类库的名称空间版本号"目录下,不同的类库版本在注册的时候会按照版本号分开放置:

·某类库1.0版本 C:Winntassemblygac名称1.0名称.dll

·某类库1.1版本 C:Winntassemblygac名称1.1名称.dll

2、可以同时存在一个类库的n个版本,至于在程序中用哪个版本,在程序的配置文件中声明,CLR会根据声明来调用相应的版本的类库。我觉得.Net实现方法未免太复杂了一些,将所有共享类库都塞到一个系统目录下,并且同一个类库还有n个版本,将来.Net第三方开发的类库逐渐丰富起来以后,.Net类库的GAC也会越来越庞大,会不会也搞得和Windows注册表一样难以维护?软件发布到服务器上的时候,类库要再注册一次,服务器会逐渐形成一个庞大的树状的GAC,GAC里面存放着组件的n个版本。试想经过一段时间之后,C:Winntassemblygac目录会越来越庞大,有的组件甚至有n个版本都放在那里,你又不敢随便删除,不知道是不是有程序需要使用,我不明白MS为什么要把这么简单的事情搞到这么复杂?

讨论:全局程序集缓存不会是无限大的,所以“将来.Net第三方开发的类库逐渐丰富起来以后,.Net类库的GAC也会越来越庞大,会不会也搞得和Windows注册表一样难以维护?”这是杞人忧天。原因如下:第一是操作系统的生命周期一般不会是无限长的,而且越来越短,Windows为证,同时.Net Framework也在不断更迭,在十年左右的时间里,全球的程序产量是有限的,高质量的第三方开发的类库更是有限,需要注册到GAC的就更少了。

查找方法

JRE中由ClassLoader负责查找和加载程序引用到的类库,基础类库ClassLoader会到rt.jar中自动加载,其它的类库,ClassLoader在环境变量CLASSPATH指定的路径中搜索,按照先来先到的原则,放在CLASSPATH前面的类库先被搜到,Java程序启动之前建议先把PATH和CLASSPATH环境变量设好,OS通过PATH来找JRE,确定基础类库rt.jar的位置,JRE的ClassLoader通过CLASSPATH找其它类库。但有时候会出现这样的情况,希望替换基础类库中的类库,那么也可以简单的通过-Djava.endrosed.path=...参数传递给java.exe,于是ClassLoader会先于基础类库使用java.endrosed.path参数指定路径的类库。因此Java的版本管理是非常简单有效的,也许很原始,不过很好用,简单就不容易出错。(所以我很奇怪Eric Ramond为什么批评Java的类库管理机制,他还居然批评Java的接口,令人怀疑他对Java的了解程度)

aa31bea8a0b9c49c73d30583c23265a0.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值