在用myeclipse工具开发java的过程中,新建目录时发现会有package,folder和source folder等不同类型的选项,

因此在网上搜集了一些资料:如下

以下文章转自:https://blog.csdn.net/fanxiaobin577328725/article/details/54092295

前言:我使用的是Eclipse,因此示例都是以这个IDE进行演示,其他IDE应该是类同的。package、folder和source folder本质都是文件夹,只不过是处理方式不同的文件夹。

  首先我们说明一下最简单的folder,通过名字我们也可以理解,其就是文件夹。与我们操作系统下的文件夹完全一样,不起到任何作用,只是存放文件而已,存放到folder中的任何文件都只当做普通文件夹,不管其中文件是否正确,因为IDE不会对其进行任何检查。

  package就是Java开发过程中的包,其路径就是每一个类的包路径,其必须存放在一个source folder下。

  source folder是用来存放Java源代码的,其下的所有Java源文件都会被时时编译成class文件。对于JavaSE的项目会被编译到项目目录下的bin目录下,对于JavaEE项目会被编译到相应的/WEB-INF/classes文件夹中,无论是哪种项目bin文件和classes文件夹都是不会再IDE中显示的,并且上面说到的都是默认的编译路径。这些我们也都是可以更改的。如下:

项目上右击 → Build Path → Configure Build Path

下面分别是不同的配置:

SE项目:

EE项目:

下面对package与source folder的区别进行整理:

不同点:

source folder是通过“/”(反斜线)来进行上下级划分的,而package是通过“.”(点)来进行上下级划分的。
source folder下能创建package,但是反过来是不可以的,也就是说package下不能创建source folder。
java源文件中的package属性是按照package路径来进行赋值的,换句话说在source folder这个目录下的文件的package属性为空。
相同点:

其中的Java源代码都会被时时编译成class文件。
其中的非java文件会被拷贝一份到相应的class路径下。
注意:我们可以创建多个source folder,其实是对我们代码的一种归类,但他们中的Java源文件都会根据其包路径编译到相应的class路径下(例如:SE是bin目录),我们利用这一特性,可以将我们的测试代码与程序主代码分离,只要保证其包路径一样,就不需要import(导入)就可以直接使用了,因为他们的class文件已经编译到相同的包中了。

上面的三种文件夹的转换,我们可以通过右击 → Build Path中的选项进行操作。如下:

package 转成 folder 显示:选中package, build path →  Exclude
folder 转成 package 显示:选中folder, build path → Include
package 转成 source folder 显示:选中package, build path → Use as Source folder
source folder 转成 package 显示:选中folder, build path →  Remove from BuildPath
参考资料:

package、folder和source folder的区别的更多相关文章

  1. folder、source folder、package 区别与联系

    在eclipse下,package,source folder,folder都是文件夹.  它们的区别如下:  package:当你在建立一个package时,它自动建立到source folder下 ...

  2. eclipse 下面的folder,source folder,package的区别与作用

    首先明确一点,folder,source folder,package都是文件夹,既然是文件夹,那么任何的文件都可以往这三种文件夹下面的放.1.他们的区别folder就是普通的文件夹,它和我们wind ...

  3. eclipse中folder、source folder和package的区别

    今天做ssm项目时,突然发现了这个问题,特别好奇,sqlSessionFactory.xml文件如何找到: 1.放在src/hello目录下: InputStream inputStream = Re ...

  4. folder,source folder,package 区别

    source folder source folder下面的Java文件都会被编译,编译后的文件会被放在我们设置的某个文件夹下面(一般我们设置成WEB-INF/classes),source fold ...

  5. eclipse package,source folder,folder区别及相互转换

    今天遇到一个问题:在com.a.b.c这个包路径下建一个package,但是不知为什么就会自动编程folder,而且在这个“package”下的所有property文件读不到.所以看了一下文章:在ec ...

  6. eclipse创建文件package,source folder和folder区别及相互转换

    原文:http://blog.csdn.net/u014079773/article/details/66973910 https://www.cnblogs.com/shihaiming/p/735 ...

  7. eclipse的package, folder, source folder 异同以及相互转化

    1 相同点:都是文件夹; 不同点: 我们用面对对象思维来看; 首先说folder, 三者的父类(object),就是普通的文件夹,它和我们window下面使用的文件夹没有任何区别; source fo ...

  8. eclipse package,source folder,folder差别及相互转换

    在eclipse下, package, source folder, folder都是目录.   它们的差别例如以下:   package:当你在建立一个package时,它自己主动建立到source ...

  9. MyEclipse中Source Folder,package,folder的区别

    1.在eclipse下,package, source folder, folder都是文件夹. 但它们有区别如: 2. package:当你在建立一个package时,它自动建立到source fo ...

随机推荐

  1. CODEVS——T 1049 棋盘染色

    http://codevs.cn/problem/1049/  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解  查看运行结果     题目描述 Descr ...

  2. 洛谷 P2997 [USACO10NOV]旗帜Banner

    P2997 [USACO10NOV]旗帜Banner 题目背景 题目大意(by:曹彦臣): 平面上有(0,0)到(n,m)的(n+1)*(m+1)个点.问有多少点对所连的线段不过其他点,且长度在[l, ...

  3. jquery 的ajax无刷新上传文件之后,页面还是会莫名的刷新-----解决办法

    文件上传用到全局数组: $_FILES 只需要把下面的 <button onclick="post()">提交</button> 改为 <input ...

  4. java如何实现替换指定位置的指定字符串的功能

    /**  * @创建日期 2013-07-15  * @创建时间 14:25:59  * @版本号 V 1.0  */ public class CosTest {     public static ...

  5. nginx启动访问

    修改配置文件后,查看配置是否ok 以下是有错误的 以下是ok的 nginx/sbin/nginx -t 启动查询: /usr/local/nginx/sbin/nginx -c /usr/local/ ...

  6. 二分查找(c &amp; c++)

    typedef int ElemType; C版本号 [递归版本号] int binSearch2(ElemType List[] ,int x,int head,int tail){ //递归版本号 ...

  7. visual studio2013 C++查看对象布局

    一在visual studio中进行设置,可以方便的查看对象的内存布局 右键所要显示的*.cpp >> 属性 >> 命令行 >> 其它选项 在其他选项中添加: /d ...

  8. 在ubuntu中安装photoshop cs6

    对于很多专业的PS高手来说,真心难以找到顺手的且可以完美替代PS的软件,所以我们这里的解决办法就是用wine来安装. 虽然网上有很多的wine安装ps的方法,但是在使用过程往住会发生莫名其妙的崩溃,体 ...

  9. 【HNOI 2004】 L语言

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=1212 [算法] 字典树 + dp [代码] #include<bits/std ...

  10. 关于api-ms-win-crt-runtimel1-1-0.dll缺失的解决方案

    关于api-ms-win-crt-runtimel1-1-0.dll缺失的解决方案 目录 关于api-ms-win-crt-runtimel1-1-0dll缺失的解决方案 目录 安装VC redite ...