zoukankan      html  css  js  c++  java
  • Java知多少(9) import及Java类的搜索路径

    如果你希望使用Java包中的类,就必须先使用import语句导入。

    import语句与C语言中的 #include 有些类似,语法为:
        import package1[.package2…].classname;
    package 为包名,classname 为类名。例如:
    1 import java.util.Date; // 导入 java.util 包下的 Date 类
    2 import java.util.Scanner; // 导入 java.util 包下的 Scanner 类
    3 import javax.swing.*; // 导入 javax.swing 包下的所有类,* 表示所有类
    注意:
    • import 只能导入包所包含的类,而不能导入包。
    • 为方便起见,我们一般不导入单独的类,而是导入包下所有的类,例如 import java.util.*;。

    Java 编译器默认为所有的 Java 程序导入了 JDK 的 java.lang 包中所有的类(import java.lang.*;),其中定义了一些常用类,如 System、String、Object、Math 等,因此我们可以直接使用这些类而不必显式导入。但是使用其他类必须先导入。

    前面讲到的”Hello World“程序使用了System.out.println(); 语句,System 类位于 java.lang 包,虽然我们没有显式导入这个包中的类,但是Java 编译器默认已经为我们导入了,否则程序会执行失败。

    Java类的搜索路径

    假设有如下的 import 语句:
    1 import p1.Test;
    该语句表明要导入 p1 包中的 Test 类。

    安装JDK时,我们已经将环境变量 CLASSPATH 设置为 .;%JAVA_HOME%lib,而 JAVA_HOME 又为 D:Program Filesjdk1.7.0_71,所以 CLASSPATH 等价于 .;D:Program Filesjdk1.7.0_71lib。

    Java 运行环境将依次到下面的路径寻找并载入字节码文件 Test.class:
    • .p1Test.class("."表示当前路径)
    • D:Program Filesjdk1.7.0_71libp1Test.class

    如果在第一个路径下找到了所需的类文件,则停止搜索,否则继续搜索后面的路径,如果在所有的路径下都未能找到所需的类文件,则编译或运行出错。

    你可以在CLASSPATH变量中增加搜索路径,例如 .;%JAVA_HOME%lib;C:javalib,那么你就可以将类文件放在 C:javalib 目录下,Java运行环境一样会找到。
     
  • 相关阅读:
    纯CSS垂直居中的四种解决方案
    UTF-8 UTF-16 UTF-32 最根本的区别?
    js中==和===区别
    关于端口的定义, 为什么要有端口
    变量命名规范
    使用枚举enum
    js中, 用变量或对象作为if或其他条件的表达式
    使用jquery-panzoom来实现图片或元素的放大缩小
    使用mescroll来实现移动端页面上拉刷新, 下拉加载更多功能
    angularjs常用事件
  • 原文地址:https://www.cnblogs.com/Coda/p/4349354.html
Copyright © 2011-2022 走看看