Android应用编程基础第21篇:Java语言中的包
前面我们讲了异常以及异常的使用,今天我们来讲讲Java语言中的包(package)。我们首先来了解下为什么要使用包。
当一个大型程序由数个不同的组别或人员开发共同开发时,用到相同的类名称是很有可能的事。如果这种情况发生,还要确保程序可以正确运行,就必须通过 package关键字来帮忙了。
package 是在使用多个类或接口时,为了避免名称重复而采用的一种措施。那么具体应该怎么使用呢?在类或接口的最上面一行加上 package 的声明就可以了。
语法如下:
package 包名称;
经过 package 的声明之后,在同一文件内的接口或类都被纳入相同的 package 中。
下面我们看一个例子:
01 packagedemo.java ;
02 classPerson
03 {
04 publicString talk()
05 {
06 return "Person ——>> talk()" ;
07 }
08 }
09
10 class TestPackage1
11 {
12 public static void main(String[]args)
13 {
14 System.out.println(newPerson().talk()) ;
15 }
16 }
在上面的TestPackage1.java 中,除了第 1 行加的 package demo.java 声明语句之外,其余的代码我想大家应该都见过了有些朋友已经练习着写过了。由于第 1 行声明了一个 demo.java 的包,所以就相当于将Person 类、TestPackage1 类放入了 demo.java 文件夹之下。
如果我们使用命令行对TestPackage1.java文件进行编译,编译命令如下:
javac -d . TestPackage1.java
“-d”:表示生成目录
“.”:表示在当前目录下生成
这样就会在当前你所使用命令的目录下生成一个 demo 的文件夹,在 demo 文件夹下又会生成一个java 文件夹,在此文件夹下会有编译好的 Person.class 和 TestPackage1.class。
举个例子如果你在D盘根目录下使用上面的编译命令编译TestPackage1.java文件,那么D盘下就会生成demo/java/Person.class和demo/java/ TestPackage1.class文件。
编译好之后如果我们想要运行TestPackage1类,我们就不能使用java TestPackage1了,因为TestPackage1.java在包demo.java中,我们必须在TestPackage1前加上包名。
需要使用下面的语法来执行它:
java demo.java.TestPackage1
输出结果:
Person —— >> talk()
程序说明:
程序第14行实例化了一个Person对象并访问talk()方法,输出"Person ——>> talk()"。
今天我们简单地讲了下package(包)的概念以及使用。上面的例子中的两个类是在同一个包里的,因此可以直接访问。本系列的下一篇,我们将讲解如何访问不同包的类的成员,敬请期待。谢谢大家!
----------
微价值网(公号vjiazhi),关注移动互联网,以及APP产品/技术/推广,提供最有价值的干货文章。