不帅 发表于 2015-1-18 11:30:31

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

而学习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:
Mimetypes:
Names:
在最上面一行是剧本的别号,也就是利用它们中的恣意一个都能够。失掉一个详细的剧本引擎有3种办法。
·依据扩大名失掉剧本引擎
ScriptEngineengine=manager.getEngineByExtension("js");
getEngineByExtension的参数就是Extensions:中[…]里的部分。
·依据Mime范例失掉剧本引擎
ScriptEngineengine=manager.getEngineByMimeType("text/javascript");
getEngineByMimeType的参数能够是Mimetypes:中的任何一个,能够将text/javascript改成text/ecmascript。
·依据称号失掉剧本引擎
ScriptEngineengine=manager.getEngineByName("javascript");
getEngineByName后的参数能够是Names:中的任何一个,如能够将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)的语言

精灵巫婆 发表于 2015-2-7 13:17:30

其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。

第二个灵魂 发表于 2015-2-8 20:11:25

你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。

因胸联盟 发表于 2015-2-19 02:30:00

是一种为 Internet发展的计算机语言

若天明 发表于 2015-2-21 02:19:17

Java是一种计算机编程语言,拥有跨平台、面向对java

活着的死人 发表于 2015-2-22 20:55:46

接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。

小妖女 发表于 2015-3-4 12:36:31

Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)

莫相离 发表于 2015-3-11 19:34:54

一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从

深爱那片海 发表于 2015-3-13 00:09:37

Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。

冷月葬花魂 发表于 2015-3-13 01:07:18

Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)

乐观 发表于 2015-3-20 08:00:38

任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言

透明 发表于 2015-4-7 19:21:11

是一种突破用户端机器环境和CPU
页: [1]
查看完整版本: 了解下JAVA的Java SE 6之剧本引擎 让程序为虎傅翼