在用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. LucaCanali --DTRACE AND SYSTEMTAP 脚本工具

    https://github.com/LucaCanali http://cern.ch/canali/

  2. 解决Linux ssh登录马上退出问题

    纠结了非常久,最终找到解决方法: 把sshd_config文件里的UsePAM改成no就能够了

  3. LeetCode258——Add Digits

    Given a non-negative integer num, repeatedly add all its digits until the result has only one digit. ...

  4. 网络基础篇(一)--TCP/IP协议族

    TCP/IP协议族是一个分层,多协议通信体系. 1 TCP/IP协议族体系结构 TCP/IP协议族自底而上分为四层: 数据链路层, 网络层, 传输层和应用层. 1.1 数据链路层 实现网卡接口的网络驱 ...

  5. CreateDialog Win32 API调用的一个小问题

    在老版本号的VC编译器上.关键调用是下面2句: InitCommonDialogs(); HWND hwndDialog = CreateDialog(hInstance, "IDD_XXX ...

  6. Jmeter压测问题_Non HTTP response code: org.apache.http.conn.ConnectTimeoutException

    负载机压测,线程500,服务器根本无压力,负载机本身发的请求都是失败的 Sample result如下: Thread Name: 考勤(考勤提交) 1-134 Sample Start: 2018- ...

  7. android在学习——activity关闭和dialog.dismiss冲突的解决(Activity has leaked window com.android.internal.policy.impl.PhoneWindow)

    当我们在退出整个程序的时候偶尔会出现这种报错:Activity has leaked window com.android.internal.policy.impl.PhoneWindow 其意思大概 ...

  8. 移植DirectFB于SOC3210(龙芯)【转】

    本文转载自:http://blog.chinaunix.net/uid-25298908-id-120188.html 编译平台:龙芯.中标普华Linux桌面5 目标平台:SOC3210 一.获取源码 ...

  9. 【POJ 3322】 Bloxorz I

    [题目链接] http://poj.org/problem?id=3322 [算法] 广度优先搜索 [代码] #include <algorithm> #include <bitse ...

  10. 【BZOJ 1370】 团伙

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=1370 [算法] 并查集 + 拆点 [代码] #include<bits/std ...