Andriod项目开发实战(1)——如何在Eclipse中的一个包下建新包
2016-07-03 21:15
597 查看
最开始是想将各个类分门别类地存放在不同的包中,所以想在项目源码包中新建几个不同功能的包eg:utils、model、receiver等,最后的结果应该是下图左边这样的:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/8059107e3e20361cc285b694f32291b2.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/00cd10ca60bc2b641207d676b6467b51.png)
很明显建立项目后的架构是上图右边这样的,所以后面理所当然地选择new-->package,name栏填上activity,然而结果是下面左边这样的。。。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/dcf932fbdf63076b3232d0203fe5d96d.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/776dda3d097ef7246935aea0e1e9ae1d.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/cf3682e275fd74ff4c0c161edeab6501.png)
这样的结果明显与预想的不一样,我们看到activity与com.mukekeweather.app是并行结构,而我们需要的是树状结构的
查了很多资料之后才弄明白这个问题,因为java中新建package时是分层的,是按name中的“.”来进行分层,通过上面的右图可以看出,我们最初的包是com.mukekeweather.app,然后就有了这样的树状文件架构,在src文件夹下有com文件夹,然后在com文件夹中又新建mukekeweather文件夹,然后在其下才新建app文件夹。所以,我们预想中的文件夹的架构应该是上图最右边的那样的。。。
所以按照这样的文件夹架构,我们在新建包时new-->package,name栏应该分别填上com.mukekeweather.app.activity 、com.mukekeweather.app.db、com.mukekeweather.app.model、com.mukekeweather.app.receiver等才能达到我们要的效果,就像下面两张图这样的。。。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/33ac67dfe8a8dc834c94478da49acf20.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/ff218bc59a02ce3fa103e78e388c9de3.png)
然后我们看到效果就是下面这样的。。。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/fa734db8964c0cee1af83fdfe9400e19.png)
ok,方法就这样了,其实理解了java中新建包时name中的写法与包在文件中的实际组织架构之间的关系就很容易了,我们按照刚刚的方法继续将其他几个包补上就达到了我们预想的效果了,就是下面左侧的这张图了,其相应的文件组织架构就是右侧这样了的。。。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/5ca593f213dcfb9dfe6953a5821f6301.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/8059107e3e20361cc285b694f32291b2.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/00cd10ca60bc2b641207d676b6467b51.png)
很明显建立项目后的架构是上图右边这样的,所以后面理所当然地选择new-->package,name栏填上activity,然而结果是下面左边这样的。。。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/dcf932fbdf63076b3232d0203fe5d96d.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/776dda3d097ef7246935aea0e1e9ae1d.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/cf3682e275fd74ff4c0c161edeab6501.png)
这样的结果明显与预想的不一样,我们看到activity与com.mukekeweather.app是并行结构,而我们需要的是树状结构的
查了很多资料之后才弄明白这个问题,因为java中新建package时是分层的,是按name中的“.”来进行分层,通过上面的右图可以看出,我们最初的包是com.mukekeweather.app,然后就有了这样的树状文件架构,在src文件夹下有com文件夹,然后在com文件夹中又新建mukekeweather文件夹,然后在其下才新建app文件夹。所以,我们预想中的文件夹的架构应该是上图最右边的那样的。。。
所以按照这样的文件夹架构,我们在新建包时new-->package,name栏应该分别填上com.mukekeweather.app.activity 、com.mukekeweather.app.db、com.mukekeweather.app.model、com.mukekeweather.app.receiver等才能达到我们要的效果,就像下面两张图这样的。。。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/33ac67dfe8a8dc834c94478da49acf20.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/ff218bc59a02ce3fa103e78e388c9de3.png)
然后我们看到效果就是下面这样的。。。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/fa734db8964c0cee1af83fdfe9400e19.png)
ok,方法就这样了,其实理解了java中新建包时name中的写法与包在文件中的实际组织架构之间的关系就很容易了,我们按照刚刚的方法继续将其他几个包补上就达到了我们预想的效果了,就是下面左侧的这张图了,其相应的文件组织架构就是右侧这样了的。。。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/5ca593f213dcfb9dfe6953a5821f6301.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/13/7b5a8c83bac482b8a492a802ffae334b.png)
相关文章推荐
- Java内存堆栈分析
- 8.3 sikuli 集成进eclipse 报错:eclipse中运行提示 Win32Util.dll: Can't load 32-bit .dll on a AMD 64 bit platform
- Java多线程之线程同步
- Java多线程之控制线程
- java中字符集的问题
- Java知识点1
- javaweb
- 8.2 sikuli 集成进eclipse 报错:Getting the VisionProxy.dll: Can not find dependent libraries...
- 8.1 sikuli报错: 提示没有对应的javaw
- java/System/BigInteger/BigDecimal/Date/Calender
- java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Integer
- JAVA使用Socket模拟服务端与客户端通讯
- Java JSON技术框架选型与实例
- hdu 1850 Being a Good Boy in Spring Festival(尼姆博奕)
- java操作(DOM、SAX、JDOM、DOM4J)xml方式的四种比较与详解
- descbc算法java版
- Java Web 学习笔记之一:服务器获取表单上传的文件
- Spring-bean的装配
- Java8 Lambda
- java static块详解