昨天我正在看团队观察员来源
(http://web.archive.org/web/20060412051941/http://download.teamviewer.com/download/TeamViewer_Source.zip)
我注意到它有不同编程语言(java和c,等)编写的文件。所以基本上,我想知道程序(如teamviewer)如何能够使用不同语言编写的文件。我是否需要某种可以将不同语言组合在一起的工具?
答案 0 :(得分:2)
通常每种语言都提供了一些与其他语言接口的方法。例如,Java支持native
关键字,您可以使用该关键字来描述不是用Java编写的方法,而是用其他语言编写的方法。在Java文件中搜索单词“native”,我很确定你会找到一些方法。然后,如果你查看C文件,你会看到这些方法在那里实现。当然,语言在运行时环境中运行,并且每个这样的环境还必须为混合使用不同语言编写的模块提供运行时支持。在Java世界中,有一种称为Java本机接口(JNI)的东西用于此任务。
如果你想要详细信息关于如何用Java和C实际编写程序,搜索“JNI”将是一个很好的起点。