如何使用package指令?带包声明的Java Dog类代码运行方法
如何保留package声明并正常运行你的Java Dog类代码?
嘿,这个问题我太熟了!Java的包机制确实容易踩这个小坑,其实只要遵循目录结构规范和正确的编译运行命令,就能保留package chap03;声明正常运行。给你一步步讲清楚:
第一步:创建匹配包名的目录结构
Java要求源文件必须放在和包名完全对应的目录里。因为你的包是chap03,所以需要在当前工作目录下创建一个名为chap03的子文件夹,然后把Dog.java文件移动到这个子文件夹里。最终的文件结构应该是这样的:你的工作目录/ chap03/ Dog.java第二步:正确编译代码
回到你的工作目录(也就是chap03文件夹的父目录),打开终端执行编译命令,要指定源文件的相对路径:javac chap03/Dog.java执行完后,
chap03文件夹里会生成对应的Dog.class字节码文件。第三步:用全限定类名运行程序
同样在你的工作目录下,运行时必须使用包名+类名的全限定名称,而不是直接写Dog:java chap03.Dog
为什么之前注释掉package才能运行?因为当你去掉包声明时,类属于默认包,Java可以直接在当前目录找到它;但保留包声明后,类属于chap03包,必须放在对应目录,且运行时指定全限定名,Java才能正确定位到这个类。
内容的提问来源于stack exchange,提问作者Brian Lee
相关产品推荐
相关产品推荐

