Re: [问题] 通过Jython,编写Java程序

楼主: uranusjr (←這人是超級笨蛋)   2017-10-21 19:50:05
※ 引述《dharma (达)》之铭言:
: Jython是采用Java语言实现的Python。这样,你只要按照Python的语法,就可以调用
: Java的各种类库,快速的编写出基于Java的程序。也就是通过Jython,编写Java程序。
: http://m.itboth.com/d/iQfuMz/python-java-jython
: 请问上文意思是说
: 原本用Java写出来的程式
: 全部都可以改成用Python语法来写
: 是这样吗?
: 还是其实有什么限制
: thanks
Jython 本身是一个完整的 Python 直译器
只是那个直译器本身是 Java 写的
因为这个原因, 所以你很容易用 Java 写出 Jython 能用的直译器扩充
最常用的 CPython 是用 C 写的
所以只要写一个包装把 C 类别转成 Python 看得懂的型别
就可以很容易从 Python 呼叫 C 模组
Jython 与 Java 也是一样的道理
只要写一层很薄的包装, 把 Java 函式库的 API 转成 Jython 看得懂的形式
就可以在 Python 程式透过这层 API 使用 Java 函式库的功能
也因为如此, Jython 本身就直接帮你包了很多 Java 标准库的功能
让你可以直接在 Python 通过这层 API 包装, 呼叫 Java 标准库
但如果你要用第三方函式库, 就是得自己写一个这样的包装, 才能在 Python 使用
Jython 的使用情境是“我有一些 Java 功能, 想用 Python 呼叫它们”
而不是“我有一些 Java 程式, 想用 Python 取代”(虽然它还是可能有用)
作者: sbrhsieh (十年一梦)   2017-10-22 23:44:00
在 Jython 使用任何Java函式库都不需要自己写glue code
楼主: uranusjr (←這人是超級笨蛋)   2017-10-23 01:04:00
是喔那是我搞错了, 不过最后结论还是一样

Links booklink

Contact Us: admin [ a t ] ucptt.com