【第二十三章】包的定义及使用
一.包的定义:
在实际开发的过程之中,一直都有包的概念,利用包可以对类进行包装,以后所有的项目中,类都必须放在包里面。
1.包的定义与使用
对于项目而言,尤其是现代的项目是不可能由一个人完成的,往往在开发的团队中,有2-3位开发者进行项目业务的实现,于是在这样的
情况下就不得不面临一个问题:有可能产生类的重名定义。
在操作系统之中已经明确的定义了一个要求:同一个目录之中不允许存放有相同的程序类文件,但在一个开发中,我们很难保证类的不重复,
所以为了可以进行类的方便管理,那么往往将程序文件放在不同的目录下,而这个目录,我们成为包。
package cn.mldn.demo //定义一个包,"."表示分隔目录 public class tsy { public static void main(String args[]) { System.out.println("Hello World!"); } }
一旦程序开发中有包,此时程序编译后的结果就必须将*.class文件保存在指定的目录之,但是如果手工建立就会非常的麻烦,此时需要进行
打包编译处理:
javac -d . tsy.java
"-d"表示要生成目录,而目录结构就是定义的包的结构
“."表示在当前所在的目录中生成程序类文件
二.包的导入:
利用包的定义实际上就可以将不同的功能的一个类保存在不同的包之中,但是这些类彼此之间有互相调用的关系,那么这个时候就需要import来
导入其他包中的程序类。
范例:定义一个程序类“cn.mldn.util.Message"
package cn.mldn.util; public class Message{ public String getContent(){ return "www.mldn.com"; } }
范例:定义一个测试类使用Message "cn.mldn.text.TestMessage"
package cn.mldn.Test.TestMessage; import cn.mldn.util.Message; public class TestMessage{ public static void main(String args[]){ Message msg = new Message(); System.out.println(msg.getContent()); } }
此时编译的时候:如果有100个类且相互调用严格,无法区分,此时可以交给java自己完成,编译命令:
Javac -d . *.class