Java包与文件夹结构? 有什么不同

我想知道Eclipse IDE中用于Java EE开发的文件夹结构和包之间有什么区别。

我们什么时候使用哪一个,为什么?

什么应该是实践

  • 创build一个像src / com / utils这样的文件夹结构,然后在里面创build一个类
  • 创build一个类似src.com.util的包,然后在其中创build一个类

哪个选项会更好,更容易部署,如果我必须稍后编写一个ant脚本进行部署?

如果我去的文件夹结构将部署是复制文件从开发到部署目标一样简单?

如果你configuration正确的东西。 在src里添加一个文件夹,就像从File > New Package添加一个包一样。

所以,这取决于你,无论你感到舒服 – 添加一个文件夹或创build一个包。 另外,当你把东西放在src下时,包名从子文件夹开始。 所以, src/com/naishe/test会被包com.naishe.test

基本上没有区别,两者都是一样的。

在这两种情况下,文件夹结构都是src/com/utils

在这两种情况下,你都需要提及

 package com.utils; 

作为class第一线

由于实际上没有什么区别,所以对ant script没有任何影响。

当我们使用与其他类相同的类名时,“打包”可以帮助我们避免类名冲突,例如,如果我们有一个名为“Vector”的类名,它的名字会与JDK中的Vector类崩溃。发生是因为JDK使用java.util作为Vector类(java.util.Vector)的包名称,所以我们的Vector类可以被命名为“Vector”,或者我们可以把它放入另一个包,比如com.mycompany.Vector使用包的好处反映了维护,组织和增加开发人员之间的协作的便利性,理解包的概念也将帮助我们更有效地pipe理和使用存储在jar文件中的文件。

请查看http://www.jarticles.com/package/package_eng.html了解更多关于软件包的信息;

创build一个包如'src.com.util'

这听起来像是一个错误。 包名称应该是“com.util”,“src”是源文件夹的名称。

除此之外,我看不出你的两个select有什么不同。 结果是一样的,对不对? 只是在不同的步骤来到它的GUI。 在Eclipse中创build新包的向导只是在源文件夹中创build适当的文件夹层次结构的包装。

您根本不需要创build空包,您可以直接创build类(如果包尚不存在,将自动创build)。

包是自动“源文件夹”,其中文件夹只是一个普通的文件夹。 当你编译一个Eclipse项目时,源文件夹中的所有文件都被编译,但不是在常规文件夹中(除非那些常规文件夹是a)