gpt4 book ai didi

Java 包 - 引用来自不同包的类

转载 作者:搜寻专家 更新时间:2023-10-31 08:13:44 26 4
gpt4 key购买 nike

在(默认包)中,我有一个名为“Bird”的类,它有一个名为“dialog”的方法。

我可以在同一个包中创建一个名为 Class1 的类,如下所示:

public class Class1
{
public static void main(String[] args)
{
Bird b = new Bird("Alexander",true,5);
b.dialog("tweet!");
}
}

这确实有效,我实际上可以在控制台中看到 tweet!

我的问题是:如果 Class1 位于包 Fundamental 中(而类 Bird位于“默认包”)?在这种情况下,我得到一个错误:“无法识别鸟类类型”。我可能应该以某种方式指明包裹。

附带问题:1. 什么是类路径,如何更改它?我已经看到这个术语在几个与包相关的讨论中被模糊地使用,但没有一个像我刚才给出的那样有明确的例子。2. 我多次看到名为 xxx.bla.zzz 的包 - 这是标准吗?我通常只使用一个通用名称(不是用 . 分隔的三个名称)我知道包是 Java 对其他语言中 namespace 的替代。如果有几种解决方案值得一提,我将不胜感激。谢谢!

最佳答案

你永远不应该使用默认包,这不是一个好习惯,你不能从默认包中导入类。始终声明您的包结构。

Bird 类的第一行添加:

package animals;

在你的 Class1.java 的第一行写你的包名

package foo;

import animals.Bird;

请注意,要使其正常工作,Bird 类和 Class1 类应分别位于“animals”文件夹和“foo”文件夹中

关于Java 包 - 引用来自不同包的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14592738/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com