java犀牛是什么意思_深入浅出Rhino:Java与JS互操作
2011年10月6日,一年一度的JavaOne大会隆重举行。JavaOne2011大会的主题之一介绍针对不同Java平台的产品路线图,这其中包括移动版(ME,Micro Edition)、标准版(SE,Standard Edition)以及企业版(EE,Enterprise Edition)。
Java SE的亮点之一就是Oracle详细阐述Java SE 8路线图。我们先来看看Java SE 8新增了哪些主要功能:
Java SE 8 新增主要功能
1、为提高开发人员工作效率,更好地利用多核处理器和增强对Java集合APIs的大容量数据处理功能,推出的Lambda表达式(“关闭”)。
2、原始Java模块系统(“项目Jigsaw”)将简化应用程序的构建、包装以及部署,让一个完全模块化的Java平台能在服务器、客户和嵌入式系统上进行定制化部署。
3、在JVM上的JavaScript改进,包括一个为JVM优化的全新JavaScript引擎Nashorn和全面的Java / JavaScript互操作性。
4、具有JavaFX 3.0形式的下一代Java客户端。包括多点触摸功能的现代设备支持。
5、完成的HotSpot / JRockit JVM集聚项目,包括性能增强和第二代的Java Flight Recorder。
其中,笔者最关心的是第三条,即JVM对JavaScript的改进。它的核心组件是JavaScript引擎Nashorn,它实现了Java与JavaScript互操作性。Nashorn一词与Rhino类似,汉语意思均为犀牛。而巧合的是,Rhino就是JavaScript引擎,它的目的就是实现Java与JavaScript的互操作性。那么Rhino究竟是什么呢?为什么说Nashorn是新一代JavaScript引擎?Rhino有什么特性?Rhino与Java及JavaScript有什么关系呢?本文将会为您一一解答。
什么是Rhino?
Rhino 是JavaScript 的一种基于Java的实现,原先由Mozilla开发,现在被集成进入JDK 6.0。下面这两行代码恰好说明了这一点。
import sun.org.mozilla.javascript.internal.Context;
import sun.org.mozilla.javascript.internal.Scriptable;
Rhino汉语意思为犀牛,它的名字来源于 O'Reilly 关于 JavaScript 的书的封面,如图一所示。
图一 “犀牛“的来源
Rhino的特点如下:
JavaScript 1.5的全部特性
◆ 允许使用脚本直接操作Java
◆ 提供JavaScript Shell执行其它JavaScript脚本
◆ 提供JavaScript编译器将JavaScript源程序转换成Java类文件
Rhino相关背景
Rhino的历史可追溯到1997 年。Netscape计划开发Java版的Navigator,即Javagator。它也就是 Rhino 的前身。虽然 Javagator 未能开花结果,但是Rhino,作为Netscape 对 JavaScript 的移植语言,经过时间考验存活了下来。
如今,随着 Rhino 开放源代码,越来越多的开发者参与了 Rhino 的开发。随着Rhino的愈加成熟,越来越多的用户选择使用了Rhino。
51/512345>
java犀牛是什么意思_深入浅出Rhino:Java与JS互操作相关推荐
- 有谁转行学java成功了的吗_转行学习java靠谱吗?
转行学Java靠谱吗?靠不靠谱主要还是看你自己是否想要学好Java技术,是否想要从事这方面的岗位工作,如果你已经有了这个决心,那么自然而然什么都不会问题.无论我们学Java是兴趣还是想要通过学好Jav ...
- java正则截取xml节点_实例讲述Java使用正则表达式截取重复出现的XML字符串功能...
Java使用正则表达式截取重复出现的XML字符串功能示例 本文实例讲述了Java使用正则表达式截取重复出现的XML字符串功能.分享给大家供大家参考,具体如下: public static void m ...
- java 获取 反射 方法 名_乐字节Java反射之一:反射概念与获取反射源头Class
一.Java反射机制概念 "程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言",如Python, Ruby是动态语言:显然C++,Java,C#不是动态语言,但是JAV ...
- 深入java虚拟机 第四版_深入理解Java虚拟机-常用vm参数分析
Java虚拟机深入理解系列全部文章更新中... https://blog.ouyangsihai.cn/shen-ru-li-jie-java-xu-ni-ji-java-nei-cun-qu-yu- ...
- java视频为什么这么多_为什么看java教学视频教的都是javase,两者难道语言相同吗?...
Java 分类 Java SE(Java Platform Standard Edition) :Java平台标准版.主要用于桌面应用程序的开发,是Java技术的核心,提供基础 Java开发工具.执行 ...
- java工程师有什么要求_什么是java,java工程师应该具备哪些能力?
这两年,虽然各种各样的新兴语言不断涌现,收获了一大批迷粉,但是java的地位,却始终难以撼动.作为一门成熟的,经久不衰的语言,java吸引了越来越多的人,想加入进来.但是,很多人在选择java前,或多 ...
- java char字符转编码_一、java基础-数据类型_数据类型转化_字符编码_转义字符
1.Java 支持的8种基本数据类型: java的四种整数数据类型:byte 1 short 2 int4 long8 byte 8位带符号整数 -128到127之间的 ...
- java虚拟机的生命周期_深入理解Java虚拟机——JVM的生命周期
package test; public class JVMTestLife { public static void main(String[] args) { new Thread(new Run ...
- java的应用程序开发_开发一个Java应用程序(1)
开发一个Java应用程序(1) App Engine上的Java Web应用程序通过Java Servlet标准接口与应用程序服务器交互.一个应用程序由一个或多个类组成,这些类都扩展自一个servle ...
最新文章
- 0x02 mysql 表格相关操作
- Java中throw re_详解Java编程中throw和throws子句的使用方法
- 5000字、12 连环炮、一张图快速搞定线程池
- 3详细参数_【前沿】一加7Pro拍照详细参数曝光 3倍光变30W快充
- jsp_servlet时序图
- 优化网站性能 提高网站速度访问速度的14条实践
- 英特尔傲腾内存linux,英特尔傲腾内存怎么样?intel傲腾内存优点和缺点你知道吗?...
- 【NOI2001】炮兵阵地
- 关于嵌入式可执行程序,你了解多少?
- Inceptor如何访问本地文件
- 《CSS权威指南》读书笔记
- c语言求解一元二次方程的两相等实根,C语言 求解一元二次方程
- Could not resolve dependencies for project
- zookeeper实现动态感知服务器上下线
- 肝胆疾病的生物化学检验
- The APR based Apache Tomcat Native library which allows optimal performance in production environmen
- sqlserver 数据误删除恢复
- 机器健康监测的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- Ad Hoc网络路由协议
- PHPer是草根吗?
热门文章
- 单链表插入元素 注释 c语言,数据结构之无头单链表的相关练习题——C语言实现(详细注释)...
- linux网络文件系统包括,Linux文件系统
- oracle+内存错误,oracle使用内存的错误,ORA-27102: out of memory
- 计算机桌面打标签,在电脑桌面上添加便签的方法步骤详解(2)
- Tomcat运行三种模式:http-bio|http-nio|http-apr介绍
- 多媒体计算机技术的主要特点,多媒体技术主要特点?
- 无线网络虚拟服务器,无线虚拟局域网
- stm32 PWM输入捕获
- java strcpy,详解C语言中strcpy()函数与strncpy()函数的使用
- oracle解析md5,Oracle中的MD5加密详解