温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Jython在语言特性是怎样的

发布时间:2021-11-22 18:33:04 来源:亿速云 阅读:143 作者:柒染 栏目:编程语言

本篇文章给大家分享的是有关Jython在语言特性是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

Jython 是作为包含安装程序的单个 Java 类文件而发布的。只要下载 jython-21.class 并将该文件放在 CLASSPATH 内,然后运行 java jython-21 。选择您要安装的组件(在示例中,我选择了所有缺省组件),接受其许可证(这是开放源码 BeOpen/CNRI 许可证)并指定安装目录,之后安装程序会完成其余安装。

如果安装时碰到问题,请参阅 Jython 网站上的安装信息页。对于 UNIX 平台,您可能想将选择的 Jython 安装路径添加到 PATH 环境变量。做为Jython入门指导,现在只要输入“jython”就可以运行交互式 PATH :

清单 1. 运行 Jython shell

$ jython  Jython 2.1 on java1.4.0_01 (JIT: null)  Type "copyright", "credits" or "license" for more information.  >>>

>>> 提示符允许您输入命令并立即获得结果。在 Java 编程中,每个程序都必须至少定义一个类。清单 2 演示了一个完整的 Java 程序,它用于将一条消息写到屏幕:

清单 2. 完整的 Java 程序

class App  {      public static void main(String args[])    {      System.out.println("I don't like spam!");    }  }

JPython 将这些行减少为:

清单 3. Jython 减少了 Java 代码开销

>>> print "I don't like spam!" I don't like spam!  >>>

print 关键字是重要的工具之一,特别是在交互式 shell 中,它会立即打印其参数,并随后向您返回 shell 提示符。不仅输入和调试的代码比较少,而且不必经历编译/运行周期就可以马上获得结果。可以一次打印多个值,并象下面显示的那样轻松使用简单的表达式:

清单 4. print 是一个重要的 Jython 工具

>>> print "one plus one is", 1+1 one plus one is 2 >>>

Jython 表达式类似于 Java 表达式。 1+1 的结果是一个整数,通过 print 它被强制转换成字符串,并被并置到由逗号定界符指定的初始字符串。

通过使用 Jython,您甚至不需要什么工具就可以访问标准 Java 库。以下示例访问了 java.util.Random :

清单 5. 通过 Jython 访问标准 Java 库

>>> from java.util import Random  >>> rng = Random()  >>> i = rng.nextBoolean()  >>> print i  1 >>>

Jython 的 import 关键字与 Java 语言版本的相似之处在于它使一个模块中的内容可以为其它模块所使用,但是语法和行为有所差别。

上面清单 5 中的示例使用了相关的 from 关键字以限制从 java.util 导入哪些符号。其后一行显示了 Random 类实例的创建。正如您所看到的,不需要 new 关键字。

也不需要对保存新实例的变量进行任何类型说明。这强调了 Jython 的一个重要简化,而且这是其动态本性的一个优点 ― 您不必再担心数据类型定义了。

清单 5 中的下一行演示了方法调用,这与 Java 语言完全相同,只是没有对结果进行类型声明。Java 代码中的 nextBoolean() 是布尔值。Jython 2.1 没有布尔类型(不过这可能会很快改变;Python 2.3 就添加了布尔类型),因此它替换为 0或 1这样的整数。类似地,要调用希望使用布尔值的 Java 方法,就要传递满足这些约束的整数值。

您也可以使用 import 关键字对导入的所有符号作全限定,如清单 6 所示:

清单 6. Import 对所有导入的符号名称作了全限定

>>> import java.util.Random  >>> rng = java.util.Random()  >>> print rng.nextFloat()  0.9567907452583313 >>>

Jython 的浮点值与 Java 语言中的完全相同。

以上就是Jython在语言特性是怎样的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI