Java知多少(9) import及Java类的搜索路径
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 Files\jdk1.7.0_71,所以 CLASSPATH 等价于 .;D:\Program Files\jdk1.7.0_71\lib。
Java 运行环境将依次到下面的路径寻找并载入字节码文件 Test.class:
- .p1\Test.class("."表示当前路径)
- D:\Program Files\jdk1.7.0_71\lib\p1\Test.class
如果在第一个路径下找到了所需的类文件,则停止搜索,否则继续搜索后面的路径,如果在所有的路径下都未能找到所需的类文件,则编译或运行出错。
你可以在CLASSPATH变量中增加搜索路径,例如 .;%JAVA_HOME%\lib;C:\javalib,那么你就可以将类文件放在 C:\javalib 目录下,Java运行环境一样会找到。
系列文章:
Java知多少(上)
Java知多少(中)
转载于:https://www.cnblogs.com/Coda/p/4349354.html
Java知多少(9) import及Java类的搜索路径相关推荐
- Javaimport以及Java类的搜索路径
如果你希望使用Java包中的类,就必须先使用import语句导入. import语句与C语言中的 #include 有些类似,语法为: import package1[.package2-].clas ...
- Java知多少(50)Java throws子句
如果一个方法可以导致一个异常但不处理它,它必须指定这种行为以使方法的调用者可以保护它们自己而不发生异常.做到这点你可以在方法声明中包含一个throws子句.一个 throws 子句列举了一个方法可能抛 ...
- java import路径_Java import以及Java类的搜索路径
如果你希望使用Java包中的类,就必须先使用import语句导入. import语句与C语言中的 #include 有些类似,语法为: import package1[.package2-].clas ...
- 怎样下载java知乎_怎样下载JAVA?
Java 开发环境配置 在本回答中我们将为大家介绍如何搭建Java开发环境.Windows 上安装开发环境 Linux 上安装开发环境 安装 Eclipse 运行 Java window系统安装jav ...
- Java知多少(23)类的基本运行顺序
我们以下面的类来说明一个基本的 Java 类的运行顺序: 1 public class Demo{ 2 private String name; 3 private int age; 4 public ...
- Java知多少(18)类的定义及其实例化
类必须先定义才能使用.类是创建对象的模板,创建对象也叫类的实例化. 下面通过一个简单的例子来理解Java中类的定义: 1 public class Dog{ 2 String name; 3 int ...
- Java知多少(25)再谈Java包
在Java中,为了组织代码的方便,可以将功能相似的类放到一个文件夹内,这个文件夹,就叫做包. 包不但可以包含类,还可以包含接口和其他的包. 目录以"\"来表示层级关系,例如 E:\ ...
- Java知多少(15)字符串
从表面上看,字符串就是双引号之间的数据,例如"微学苑"."http://www.weixueyuan.net"等.在Java中,可以使用下面的方法定义字符串: ...
- Java知多少(96)绘图之设置字型和颜色
Java绘图中,显示文字的方法主要有三种: (1)drawString(String str,int x,int y):在指定的位置显示字符串. (2)drawChars(char data[],in ...
最新文章
- K8s简单yaml文件运行例子deployment
- FFmpeg再学习 -- FFmpeg+SDL+MFC实现图形界面视频播放器
- c语言中二叉树中总结点,C语言二叉树的三种遍历方式的实现及原理
- 送书 | 日读论文100+,AI都替代不了!辞去医药研发总监后,她成为了一名全职学术警察...
- VMware vSphere 功能特性比较 vsphere 6.5/6.7/7.0
- GetlastError()函数返回值
- Java多线程间的数据共享
- 多窗口键盘鼠标同步软件
- 解决百度云离线文件因含有违规内容被系统屏蔽无法下载问题
- uniapp 引用图片地址
- HTTP TFP状态解释
- linux网络编程常用头文件总结
- ios 微信分享重新编码链接_iOS微信分享及从Safari跳转到App
- 计算机图形学【GAMES-101】7、光线追踪原理(线面求交、预处理光追加速)
- Bmob后台云数据库
- 【C++学习笔记】类型转换和跳转语句
- 【图像去噪】基于matlab自适应中值滤波图像去噪【含Matlab 1156期】
- 磊科路由器信号按键_磊科无线路由操作手册
- 计算机三级可以入东莞户口吗,初中的家长注意了,非东莞户籍在东莞中考读高中,必须满足3个条件!...
- 【Unity3D游戏开发学习笔记】(七)上帝之眼—第三人称摄像机的简单实现(跟随视角,自由视角)
热门文章
- Quart 2D (DrawText)
- java使用itext开源包实现pdf文件合并,亲测可用,响应速度快的惊人
- android timepicker分割线颜色,关于Android的TimePicker和DatePicker一些简单的使用问题
- vue 列表 萌层 鼠标移入移出_vue鼠标移入添加class样式,鼠标移出去除样式(active)实现方法...
- 2020-08-27 GitHub 文件下载加速站点 https://g.ioiox.com
- [胡思乱想]网络游戏与社会资源公平分配
- 摘抄《MacTalk 人生元编程》
- Jquery实现子菜单散开动画
- 关于”要执行请求的操作,WordPress需要访问您网页服务器的权限”
- 软件测试python测试步骤_软件测试员必备基础:3分钟带你入门自动化测试!