java包详解_JAVA包详解

包是由.class文件组成的一个集合,.class文件时可以用Java解释其解释执行的文件,它也是由Java源的文件,即.Java文件经编译而生成的。Java是一种面向对象的语言,它的特点就是重用,包就是组织和管理.class文件的一种工具,因此,它存在的目的就是帮助我们实现代码的重用。包是一种松散的概念,一般情况下,功能相同或者相关的类组织在一个包中,例如java.io包中的类都与输入、输出有关,java.applet包中的类都与applet程序有关。

构建包

一个包事实上就是一个文件夹,这个文件夹中存放着.class文件。包像目录结构一样可以由多层结构,而各层之间以“.”来分隔,如java.io,java.awt,java.awt.color等。由于Java的类经常需要在互联网上运行,所以有可能出现同名的类,程序就不知道使用哪一个类了。但如果把类都放在不同的包中,并且使包的名字独一无二,就不会出现混乱状况。

程序中定义包用package这个关键词,它的格式如下:

package 包名:

例如:

package MyJavaProgram;

package cn.com.companyname.myname

这个语句必须放在一个源文件的第一句,并且语句前面无空格。包名一般全部用小写。我们知道一个源文件可能有多个类,其中只有一个类是公共类,这些类经编译都会产生.class文件,上面的意思是,这个源文件中的类,经编译产生的.class文件属于一个包,名为MyJavaProgram。这就定义了MyJavaProgram包。一般把要打包的源文件放到包中,然后再包中对源文件进行编译,就把.class文件放入包中了。当然javac编译器还有几个参数,可以实现确定源文件来源和.class文件放置等功能,可以实现源文件和.class文件不在同一个目录。下面是各种参数及其解释。

-g 生成所有debug信息

-g:none 不生成任何debug信息

-g:{lines,vars,source} 只生成部分debug信息

-O 优化

-nowarn 不生成警告

-verbose 输出编译器的工作记录

-deprecation 输出所有过期API的位置

-classpath 声明查找用户类库的路径

-sourcepath 声明查找源文件的路径

-bootclasspath 覆盖引导类文件路径

-extdirs 覆盖安装扩展路径

-d 声明将生成的.class文件放在何处

-enconding 声明源文件的编码方式

-traget 未指定版本的虚拟机生成类文件

包的引用

用import语句就可以引入所需的公共类,如:

import java.io.*;

这个语句表示java.io中所有的公共类被引入当前包。系统先根据classpath只是的路径,然后按照包名找到所需的类,如classpath为c:\package\mypakage,而包名为cn.com.companyname.myname,系统则按照以下路径去寻找所需的类:c:\package\mypackage\cn\com\companyname\myname,也就是把环境变量和包名相连,形成路径,然后在这个路径下寻找类。对于Java类库,由于安装时已经自动注册了路径,所以不需要添加classpath,而使用自己定义的包中的类就必须更改classpath。

还有一种方法使用某个包中的类,就是在程序中写全它的包名,但很麻烦,而不使用import语句,如:

java.io.FileInputStream in = new java.io.FileInputStream();

如果我们使用了一个包中的大多数类,可是使用通配符的方式引用包,否则,最好把需要类一一列出来,这样可以节省大量系统资源

下面一些参考信息:

1.使用配置好的$CLASSPATH,在编译的时候,如果当前的$CLASSPATH包含了所需要的所有类库,则不需要包含其它的值。只需使用java

***.java,则当前目录下会生成一个***.class,如果在***.java中使用了packagea.b.c;但是简单的javac只能在当前目录生成***.class文件,此时,如果想运行的话,需要在当前目录创建a/b/c/***.class的结构,然后执行java

a.b.c.abc

如果此时你使用cd a,进入a目录,则我们需要使用java

-cp../

a.b.c.abc,这样才会找到class文件。

2.Java编译需要使用到其它的jar的时候,则需要指定全部jar路径,不能使用文件夹包含所有形式,使用文件夹class或者普通文件的形式,javac

-cp $CLASSPATH:xxx/xxx/xxx.jar:xxx/xxx/xxx.jar

xxx.java

3. 在运行的时候,使用java -cp classpath

的使用方法和javac基本相同,但是需要注意的时候,当我们需要将非$CLASSPATH环境变量包含的值的时候,需要指出当前class所在的位置,这个位置是要考虑package之后的文件夹的位置,例如上面的a/b/c/abc.class,一定要将目录指定到a所在的目录层次。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您讲解JavaFX的快速入门。 首先,JavaFX是一个用于创建富客户端应用程序的框架。它提供了一套丰富的图形用户界面(GUI)控件、动画、图形效果等组件,使得开发者可以轻松地创建漂亮且交互性强的应用。 以下是JavaFX快速入门的步骤: 1. 安装JavaFX SDK:您需要从Oracle官网下载JavaFX SDK并安装,以便在您的开发环境中使用JavaFX。 2. 设置开发环境:您需要配置您的开发环境,以便能够使用JavaFX库和工具。这括将JavaFX库添加到Java类路径中,以及设置JavaFX Scene Builder。 3. 创建JavaFX项目:您可以使用JavaFX插件来创建一个JavaFX项目。您可以在Eclipse或IntelliJ IDEA等IDE中安装JavaFX插件。 4. 创建JavaFX场景:您需要在JavaFX中创建一个场景。场景是JavaFX应用程序中的顶级容器,您可以将其他控件添加到场景中。 5. 添加控件:您可以将JavaFX控件添加到场景中,例如按钮、标签、文本框等。JavaFX提供了许多内置的控件,您也可以创建自定义控件。 6. 设置控件属性:您可以为每个控件设置属性,例如大小、位置、背景颜色等。JavaFX提供了许多属性,您也可以创建自定义属性。 7. 添加事件处理程序:您可以为每个控件添加事件处理程序,例如单击、键盘按下等。JavaFX提供了许多内置的事件处理程序,您也可以创建自定义事件处理程序。 8. 运行JavaFX应用程序:您可以在IDE中运行JavaFX应用程序,并在JavaFX场景中查看添加的控件和设置的属性。 希望这些步骤能够帮助您快速入门JavaFX。如果您有任何其他问题,请随时问我。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值