进口声明的历史是什么?

时间:2011-02-18 10:07:52

标签: java python programming-languages import

我知道有两种使用import语句的语言:Java和Python。我们都知道the import antigravity joke

哪种语言真的引入了这种说法?它是两个中的一个,还是另一个?当α

2 个答案:

答案 0 :(得分:11)

import只是指定对其他类/模块的依赖的一种方法。某种指定方式已存在于许多语言中。

事实上,Java中的import和Python中的import做了两件完全不同的事情:

  • 在Java import中,只能通过其短名称而不是完全限定名称来引用类型(或字段/方法,如果使用import static)。根据{{​​1}}
  • ,不会发生任何类型的“模块加载”
  • 在Python import中实际加载一个模块,并可选择为其某些(或所有)成员提供一个简短的名称。

其他类似的关键字在C中为import,在Perl中为include。许多语言都有某种方式来指定这种依赖关系,但技术细节差异很大。

一种语言use语句早于Java和Python Modula-2(1978)及其后继者Modula-3

答案 1 :(得分:1)

FWIW,在80年代,您首先会遇到Extended Pascal和Ada中的import语句,其含义与目前普遍接受的用法有所不同。

在ADA中,你会[pragma]从其他语言(通常是C)导入函数。这与java中的JNI类似,或者在VB6中声明生成dll的函数。 扩展的Pascal中也引入了相同的概念(Pascal中的命名空间导入概念,ADA实际上依赖于withuses关键字的组合。)