-------siwuxie095

 
 

 
 

 
 

以 Hello World 为例

 
 

这个工程用一个文件夹表示,被放置在左侧的资源管理面板 Package Explorer 中

 
 

 
 

 
 

 
 

展开后:

 
 

可以看到一个
src 文件夹,用于存放项目的源代码


src 即 source 也即 source code 〕

 
 


JRE System Library 即当前工程所需要的运行时,它的版本是

在创建这个工程时所选择的JRE版本,这里是 jre(被我个人命名)

 
 

 
 

 
 

 
 

展开
JRE System Library:

 
 

下面有很多
jar 格式的包,即系统的运行时提供给程序的运行环境和开放的 API

 
 

 
 

 
 

 
 

展开
src:

 
 

可以看到
default package,即默认包,下面是类

 
 

 
 

 
 

 
 

 
 

在正规的开发环境中,"使用默认包 default package,在下面创建类"

的做法是非常不可取的

 
 

规范的做法:在默认包下创建它的子包〔实际上就是替代了默认包〕

(先删掉上面的
Test.java,在 default package 上:右键->New->Package)

 
 

 
 

 
 

 
 

 
 

 
 

包名的命名规则:

 
 

如:网站名为:www.siwuxie095.com,则当前的包名规则是反过来的

 
 

即:com.siwuxie095,第一个代表公司性质 commercial 商业性质;

第二个是公司名称;

 
 

接下来是项目名称,如:hello,即 com.siwuxie095.hello

 
 

接下来继续添加,这时的包名就是按照功能来划分的了,如:这

里创建的第一个包是用来运行和开启程序的,可以命名为main,


com.siwuxie095.hello.main

 
 

 
 

Finish 后,一览:

 
 

默认包
default package 就变成了 com.siwuxie095.hello.main

 
 

同时自动创建了一个类

 
 

 
 

 
 

 
 

 
 

 
 

一般情况下,一个应用程序应该遵循MVC的结构规则


M 即 Model 模型;V 即 View 视图、界面;C 即 Control 控制 〕

 
 

显然,这里的
main 包存放的就是用于控制的代码

 
 

可以在 src 上,右键->New->Package,继续创建包

 
 

视图:com.siwuxie095.hello.view

模型:com.siwuxie095.hello.model

 
 

 
 

三个基本包创建完成,如果项目非常复杂,程序的包结构也会非常复杂

 
 

 
 

 
 

 
 

 
 

包创建完成后,首先要创建程序的主要入口,即 主方法,


com.siwuxie095.hello.main 上,右键->New->Class

 
 

 
 

 
 

 
 

Name:Main,勾选上 public static void main(String[] args)

 
 

 
 

 

 
 

 
 

接下来,如果要为项目创建一个用于储存模型的类,就要放到

com.siwuxie095.hello.model 包中,如:在游戏项目中,游戏

地图、人物属性等都属于数据模型,应该放到此包中

 
 

最后,如果项目还需要添加视图

用户界面,就要放到

com.siwuxie095.hello.view 包中,存放显示视图的类

 
 

 
 

创建完成一览:package-info.java 可以删除

 
 

 
 

 
 

 
 

包和类都创建完成后,它们在硬盘中储存情况:

 
 

在资源管理器中找到
Eclipse 的工作空间 workspace,

打开项目
Hello World

 
 

 
 

 
 

src 下的 com.siwuxie095.hello.main,每一个点都代表一级文件结构

 
 

 
 

 
 

因为在工程中,main、model、view 这三个包的前缀都一样,


截止到
hello,都是储存在同一文件结构中,到了它们本身就

分开成
三个
文件夹存储

 
 

 
 

 
 

 
 

 
 

返回到项目 Hello World 的目录下,可以看到一个 bin 文件夹,

这个
bin 路径在 Eclipse 的工程管理面板(或 资源管理面板)中

是不可见的,bin 是用来存放当前 Eclipse 实时编译的 .class 文件,

它的文件夹结构和
src 完全相同

 
 

(.class 文件 即 Java的二进制文件)

 
 

 
 

 
 

 
 

 
 

 
 

当然,如果需要,也可以资源管理器中直接创建包的结构

 
 

如:在
src 下的 hello 目录下,创建 network 文件夹,这样就创建了一个

新的
network 包

 
 

 
 

 
 

 
 

 
 

不过在 Eclipse 的工程中还没有反应过来,需要手动刷新

 
 

点击工程项目名
Hello World,按 F5 刷新,或 右键->Refresh 即可

 
 

 
 

 
 

 
 

还可以为当前包创建子包,如:在
view 下创建文件夹 img,

用于存放图像,仍需到
Eclipse 中点击当前的工程,手动刷新,

才能显示

 
 

 
 

 
 

 
 

 
 

 
 

在工程文件夹目录下还可以创建其他文件夹,最常出现的是

一个名为
lib 的文件夹,可以存放一些第三方的库,直接复制

粘贴过来即可,如:复制粘贴一个
gson-2.8.0.jar

 
 

 
 

 
 

 
 

 
 

回到
Eclipse 中,手动刷新一下,显然,lib 和 src 文件夹是同一级的

 
 

 
 

 
 

 
 

 
 

lib 下的 gson-2.8.0.jar 只是出现在了工作的环境当中,并没有被工程所引用

 
 

这时选中
gson-2.8.0.jar,右键->Build Path->Add to Build Path,

 
 

 
 

 
 

 
 

 
 

将其添加到
Build Path,会出现一个新的结构:Referenced Libraries,


被引用的库,当一个jar包出现在这里,就说明它已经被当前工程所引用

 
 

 
 

 
 

 
 

且可以展开这个包,观察其目录结构,显然,其包名是符合命名规范的

 
 

 
 

 
 

 
 

 
 

这样,你就可以在工程中引用此包中的内容

 
 

如:com.google.gson 中包含了 JsonObject.class

 
 

 
 

 
 

就可以直接引用:

 
 

 
 

运行一览:输出一个空大括号,即代表一个空的Json数据

 
 

 
 

 
 

 
 

 
 

【made by siwuxie095】

Java项目的结构的更多相关文章

  1. (一)JAVA项目(非web项目)部署到windows服务器运行

    [转]http://blog.csdn.net/tracy19880727/article/details/11205063 一般服务器运行的几乎都是web项目,今天遇到一个问题,把写好的Java项目 ...

  2. eclipse集成maven3后,创建java项目详细图解

    1.创建一个Java项目 1)File--->New--->Other--->Maven--->Maven Projet 2)选择maven-archetype-quickst ...

  3. Eclipse JAVA项目的 目录结构 和 导入

    说明:本文所有测试以java工程为例: 1. Eclipse下的java工程目录 eclipse的基本工程目录叫做workspace,每个运行时的eclipse实例只能对应一个workspace,也就 ...

  4. idea中的java web项目(添加jar包介绍)和java maven web项目目录结构

    java web项目 web项目下web根目录名称是可以更改的 idea中新建java web项目,默认src为Sources Root,当然也可以手动改,在Sources Root下右键只能新建Pa ...

  5. 将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

    一.概述 java项目有两种架构,一种是 B/S 架构的,一种是 C/S 架构的. 对于 B/S 架构来说,我们常见的 java ee 即是 B/S 架构,通常,开发人员会在本地进行开发,然后将项目打 ...

  6. 像Maven一样构建java项目的目录,更好的管理java工程的源码

    都知道maven具有管理Java或者Javaweb的功能.我个人尤其看中的是其代码层次的分离.不同的代码在不同的文件夹下.这是在eclipse新建一个普通的工程无法实现的.而如果用maven实现有时候 ...

  7. 用Ant实现Java项目的自动构建和部署

    原文地址:http://tech.it168.com/j/2007-11-09/200711091344781.shtml         本文请勿转载! Ant是一个Apache基金会下的跨平台的构 ...

  8. 【dubbo】dubbo项目基本结构及provider构建

    dubbo项目基本结构如下,分别部署于不同服务器: 1.provider(接口API 实现) 2.consumer(web) 3.zookeeper 4.DB provider构建 1.api构建 i ...

  9. 使用maven编译Java项目 http://www.tuicool.com/articles/YfIfIrq

    使用maven编译Java项目 时间 2014-07-17 17:42:37  Way Lau's Blog 原文  http://www.waylau.com/build-java-project- ...

随机推荐

  1. specialized English for automation-Lesson 2 Basic Circuits of Operational Amplifiers

    排版有点乱.... ========================================================================= Operational Ampl ...

  2. 在myeclipse中配置DB Driver(数据库用MySql),并在myeclipse执行sql语句操作

    在myeclipse中配置DB Driver(数据库用MySql),并在myeclipse执行sql语句操作 MyEclipse6.5    ,  mysq驱动jar包为mysql-connector ...

  3. jQuery progression 表单进度

    progression.js是一款表单输入完成进度插件.支持自定义提示框大小.方向.左边.动画效果.间距等,也支持是否显示进度条.字体大小.颜色.背景色等. 在线实例 实例演示 使用方法 <fo ...

  4. Ethereum以太网搭建本地开放环境简明教程

    引言: 区块链技术的风起云涌预示着一个去中心化时代的来临,ethereum技术栈是目前业界最为应用广泛的基于区块链技术的技术方案,本文将记录如何基于本地环境来搭建私有区块链的开发环境. 部署私有区块链 ...

  5. 从U-Boot显示Logo到Android

    /******************************************************************************* * 从U-Boot显示Logo到And ...

  6. 比较两个array或者object是否深度相等

    function objectEquals(object1: Object, object2: Object): boolean { for (let propName in object1) { i ...

  7. Oracle 和 mysql 的批量操作Sql语句 的区别

    正确的oracle批量新增的sql是: 方法 1: <insert id="insertAttractionsBatch" parameterType="java. ...

  8. Ext.js 之MVC

    Ext.js 4.0之MVC

  9. test20181025 Color

    题意 分析 自己的想法 可以莫队+平衡树. 对每个颜色维护一颗平衡树,然后移动莫队端点的时候在平衡树中查询. 区间加操作容易实现. 单点修改转化为平衡树的插入删除. 感谢Z前辈的指导. 时间复杂度\( ...

  10. System.IO.Path类

    System.IO.Path为路径的操作封装了很多很有的东西,利用该类提供的方法能够快速处理路径操作的问题.下面详细了解一下. 1.属性 属性太复杂了,反映什么系统平台的信息,看不懂,等以后看得懂了再 ...