![](/img/trans.png)
[英]How to import org and com Packages in Java class while calling Java from PL/SQL
[英]Import a class from a hierarchy of packages
如果有一个包的层次结构(即pckg1.pckg2.pckg3
),并且每个包具有相同的类(即Abc),那么我如何从pckg1导入类Abc?
语句import pckg1.pckg2.pckg3.Abc
模棱两可,因为这三个软件包中都存在Abc
。
实际上没有包层次结构之类的东西。
pckg1.pckg2
一无所知,也不从pckg1
继承任何pckg1
。 实际上, pckg1.pckg2
可以存在,甚至没有pckg1
。 基本上,这只是一种命名约定,可以帮助您逻辑上排序。
pckg1.pckg2.pckg3.Abc
因此不明确。 它来自您当前认为层次结构中最低的软件包pckg3
。
就是说,没有pckg3
这样的东西。 有pckg1
, pckg1.pckg2
和pckg1.pckg2.pckg3
但是它们很容易被称为cat
, banana
和magic
。
import pckg1.pckg2.pckg3.Abc
不明确。 它指的是特定类别。 在这种情况下,来自pckg1.pckg2.pckg3
包的Abc
。
在Java中,没有包层次结构。 看起来好像pckg1.pckg2
和pckg1.pckg2.pckg3
是相关的,但实际上它们之间没有关系(存储.class
文件的文件结构除外,但这不是语言的一部分)。
import pckg1.Abc;
将软件包视为Windows文件夹。
如前所述,您将:
import pckg1.Abc;
但是在定义变量时,我也将使用完整的包路径,以避免产生歧义。 例如:
pckg1.Abc abc = new pckg1.Abc();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.