快速业务通道

走上开放之路: .NET 开发人员的 J2EE 基础(上) - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-18
航大量的类成员更加容易。在 Java 语言中,您需要通过两种方式处理这种分组:如何将类声明为特定包的成员,以及如何引用特定包中的类。清单 14 中的例子说明了名称空间和包的处理。

清单 14. 名称空间和包

C#                 Java // Foo will be in this namespace     // Foo will be in this package namespace MyApp.Utilities        package com.mycompany.myapp.utilities; public class Foo             public class Foo {                    {  ...                   ... }                    } // using Foo in another class      // using Foo in another class using MyApp.Utilities.Foo;        import com.mycompany.myapp.utilities.Foo; public class Foo2            public class Foo2 {                    {   ...                   ... }                    }

注意在 Java 语言中,约定的做法是包名称全部使用小写,并使用反向的 Internet 域名作为每个包的前缀。上述清单使用 Java import 语句(类似 C# using 语句)来引用 Foo2 中的 Foo 类,而没有使用完全限定的名称(C# 中的 MyApp.Utilities.Foo 或 Java 语言中的 com.mycompany.myapp.utilities.Foo )。

打包以供复用

在 C# 中,您可以编写一组类,把它们生成程序集(assembly),程序集在文件系统中表示为动态链接库。其他类可以引用这些程序集,以便使用它们所包含的类。Java 语言也允许把一组类打包到一个称为 Java 归档(Java Archive,JAR)文件的文件中以供复用。您可以将一组类组合到一个带有 .jar 扩展名的文件中,然后在其他类中引用该 JAR 文件。具有 .jar 扩展名的文件是标准的 zip 文件,可以使用 WinZip 或其他压缩实用程序来操作它们。不过为方便起见,Java SDK 包含了一个名为 jar.exe 的实用程序(在 Windows 平台上),可以使用它来把一组类组合到一个具有 .jar 扩展名的文件中。

在考察使用 jar.exe 实用程序的例子之前,理解包名称和 Java 平台用于生成类以及在运行时加载它们的目录结构之间的关系是很重要的。请考虑一个名为 Test的类,它的源代码在一个名为 Test.java 的文件中。如果将 Test.java 定义为包 com.mycompany.test的一部分,那么编译器会为结果类模块创建一个目录树。该目录树就建立在包名称的基础上。此例中该目录树为 com\mycompany\test,并且包名称中的点号被转换为目录边界(分隔符 \)。

现在打开一个命令提示符窗口,然后创建一个目录(例如 c:\javapack)。切换到该目录( cd javapack)。使用您最喜欢的文本编辑器,将清单 15 中的代码添加到一个名为 Test.java 的新文件中。

清单 15. 使用包的例子

package com.mycompany.test; public class Test {   public static void main(String[] args) {     System.out.println("In test");   } }

走上开放之路: .NET 开发人员的 J2EE 基础(上)(12)

时间:2011-03-11 IBM David Carew

使用以下命令编译 Test.java。(注意 -d 选项应该指向您为这个例子创建的目录):

java -d c:\javapack Test.java

现在 c:\javapack 目录下应该有一个名为 com 的子目录。事实上,您可以看到编译所产生的 comTest.class 文件的完全限定名称是 Test.class。 注意包名称( com.mycompany.test)是如何转换为对应目录结构(com\mycompany\test)的,该目录结构以您使用 -d选项指定的目录作为根目录。

下面我们将展示如何打包 Test.clas

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号