Java的包,
分享于 点击 19557 次 点评:131
Java的包,
今天遇到了一点问题,写个记录包:是用来区分相同名字的类的;这样我们就可以随便的给自己的类起名字而不用担心和你同事的类同名了。
如果没有给类用包,那他就放在默认的包中,这个包是没有名字了。
包和文件,Java中的包是用文件来组成的,我想是有利于类的查找把。
eg:
你给TestEnum1.java添加一个包
package com.qiao.corejava.enum1;
编译时可以javac com/qiao/corejava/enum1/TestEnum1,当然你也可以进入com/qiao/corejava/enum1/进行编译;
运行TestEnum1;如果你在基目录下java TestEnum1(如果TestEnum1.class放到包的目录下);虚拟机就找不到TestEnum1
如果你进入包的目录下java TestEnum1;他是可以找到TestEnum1但找到的不是你指定的那个TestEnum1,
java TestEnum1的意思是运行默认包下的TestEnum1,但你找到的是com/qiao/corejava/enum1/包下的TestEnum1;所以运行出错。
你如果写成java com/qiao/corejava/enum1/TestEnum1(在包目录下);这样应给可以运行了吧??呵呵,这样是找不到TestEnum1,因为包目录下没有你写的文件夹,哎,最后,清楚了,回到基目录运行,Java com/qiao/corejava/enum1/TestEnum1,成功。
希望大家指正:谢谢
相关文章
- 暂无相关文章
用户点评