仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 668|回复: 14
打印 上一主题 下一主题

[学习教程] 了解下JAVA的Java SE 6之剧本引擎 让程序为虎傅翼

[复制链接]
不帅 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:30:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
而学习JAVA我觉得最应该避免的就是:只学习,不思考,只记忆,不实践!
如今JavaSE5已公布,在来岁JavaSE6也将公布。JavaSE6较JavaSE5有了很年夜的改善,它的功效更强,并且是专为Vista所计划,这就意味着JavaSE6将是Vista上的最好选择。而JavaSE6所供应的最浩瀚的新功效势必成为它的最年夜卖点。
JavaSE6最有目共睹的新功效之一就是内嵌了剧本撑持。在默许情形下,JavaSE6只撑持JavaScript,但这其实不觉得着JavaSE6只能撑持JavaScript。在JavaSE6中供应了一些接口来界说一个剧本标准,也就是JSR223。经由过程完成这些接口,JavaSE6能够撑持恣意的剧本言语(如PHP或Ruby)。
运转第一个剧本程序
在利用JavaSE6运转剧本之前,必需要晓得你的JavaSE6撑持甚么剧本言语。在javax.script包中有良多的类,但这些类中最次要的是ScriptEngineManager。能够经由过程这个类失掉以后JavaSE6所撑持的一切剧本。以下面例子将列出一切可使用的剧本引擎工场。
importjavax.script.*;
importjava.io.*;
importjava.util.*;
importstaticjava.lang.System.*;
publicclassListScriptEngines
{
 publicstaticvoidmain(Stringargs[])
 {
  ScriptEngineManagermanager=newScriptEngineManager();
  //失掉一切的剧本引擎工场
  List<ScriptEngineFactory>factories=manager.getEngineFactories();
  //这是JavaSE5和JavaSE6的新For语句语法
  for(ScriptEngineFactoryfactory:factories)
  {
   //打印剧本信息
   out.printf("Name:%s%n"+
    "Version:%s%n"+
    "Languagename:%s%n"+
    "Languageversion:%s%n"+
    "Extensions:%s%n"+
    "Mimetypes:%s%n"+
    "Names:%s%n",
    factory.getEngineName(),
    factory.getEngineVersion(),
    factory.getLanguageName(),
    factory.getLanguageVersion(),
    factory.getExtensions(),
    factory.getMimeTypes(),
    factory.getNames());
   //失掉以后的剧本引擎
   ScriptEngineengine=factory.getScriptEngine();
  }
 }
}
下面的例子必需要在JavaSE6中编译。个中importstaticjava.lang.System.*是新的语法,将System中的一切静态成员举行援用,今后就能够间接利用out、in或err了。
经由过程运转javaListScriptEngines,将显现以下信息
Name:MozillaRhino
Version:1.6release2
Languagename:ECMAScript
Languageversion:1.6
Extensions:[js]
Mimetypes:[application/javascript,application/ecmascript,text/javascript,text/ecmascript]
Names:[js,rhino,JavaScript,javascript,ECMAScript,ecmascript]
在最上面一行是剧本的别号,也就是利用它们中的恣意一个都能够。失掉一个详细的剧本引擎有3种办法。
·依据扩大名失掉剧本引擎
ScriptEngineengine=manager.getEngineByExtension("js");
getEngineByExtension的参数就是Extensions:[js]中[…]里的部分。
·依据Mime范例失掉剧本引擎
ScriptEngineengine=manager.getEngineByMimeType("text/javascript");
getEngineByMimeType的参数能够是Mimetypes:[application/javascript,application/ecmascript,text/javascript,text/ecmascript]中的任何一个,能够将text/javascript改成text/ecmascript。
·依据称号失掉剧本引擎
ScriptEngineengine=manager.getEngineByName("javascript");
getEngineByName后的参数能够是Names:[js,rhino,JavaScript,javascript,ECMAScript,ecmascript]中的任何一个,如能够将javascript改成ecmascript。
<p>
还是要自己一点一点写代码,然后编译,改错再编译好那。还有最重要的是.net网页编程的编译环境非常好,你甚是不需要了解太多工具,对于简单的系统,你可以之了解一些语法就哦了。
不帅 该用户已被删除
沙发
 楼主| 发表于 2015-1-21 08:54:58 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
板凳
发表于 2015-1-24 15:20:48 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
小魔女 该用户已被删除
地板
发表于 2015-2-1 18:16:49 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
精灵巫婆 该用户已被删除
5#
发表于 2015-2-7 13:17:30 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
第二个灵魂 该用户已被删除
6#
发表于 2015-2-8 20:11:25 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
因胸联盟 该用户已被删除
7#
发表于 2015-2-19 02:30:00 | 只看该作者
是一种为 Internet发展的计算机语言
若天明 该用户已被删除
8#
发表于 2015-2-21 02:19:17 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
活着的死人 该用户已被删除
9#
发表于 2015-2-22 20:55:46 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
小妖女 该用户已被删除
10#
发表于 2015-3-4 12:36:31 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
莫相离 该用户已被删除
11#
发表于 2015-3-11 19:34:54 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
深爱那片海 该用户已被删除
12#
发表于 2015-3-13 00:09:37 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
冷月葬花魂 该用户已被删除
13#
发表于 2015-3-13 01:07:18 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
乐观 该用户已被删除
14#
发表于 2015-3-20 08:00:38 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
透明 该用户已被删除
15#
发表于 2015-4-7 19:21:11 | 只看该作者
是一种突破用户端机器环境和CPU
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-18 18:22

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表