import引入语句
2015-10-19 17:16
309 查看
在Java中,若想利用包的特性,可使用引入(import)语句告诉编译器要使用的类所在的位置。实际上,包名也是类名的一部分。例如,如果abc.Student包中含有Gui类,则该类可称作abc.Student.Gui。如果使用了import语句,再使用类时,包名可省略,只用Gui来指明该类。
1、使用格式
import pkgl[.pkg2[.pkg3…]].(类名I g-);
假设有一个包a,在a中的一个文件内定义了两个类XX和YY,其格式如下:
package a;
class XX{}
class YY{}
当在另外一个包b中的文件ZZ.java中使用a中的类时,语句形式如下:
package b;
import a.*;
class ZZ extends XX {}
在ZZ.java中,因引入了包a中的所有类,所以使用起来就好像是在同一个包中一样。
在程序中,可以引用包的所有类或若干类。引用所有类时,可使用通配符“*”。引入整个包时,可以方便地访问包中的每一个类,但会占用过多的内存空间,代码下载的时间将会延长,因此在了解包的基本内容后,实际要用到哪个类就引用哪个类,尽量不造成资源的浪费。
实际上,程序中不一定要有引用语句。当引用某个类的类与被引用的类存储在同一物理目录下时,就可以直接使用被引用的类。
2、分类
单类型导入:import java.io.File;
按需求类型导入:import java.io.*; 对于按需类型导入,有人误解为导入一个包下的所有类,其实不然,看名字就知道,他只会按需导入,也就是说它并非导入整个包,而仅仅导入当前类需要使用的类。
注:单类型导入和按需类型导入对类文件的定位算法是不一样的。java编译器会从启动目录(bootstrap),扩展目录(extension)和用户类路径下去定位需要导入的类,而这些目录仅仅是给出了类的顶层目录。编译器的类文件定位方法大致可以理解为如下公式:
顶层路径名 \ 包名 \ 文件名.class = 绝对路径
对于单类型导入很简单,因为包明和文件名都已经确定,所以可以一次性查找定位。
对于按需类型导入则比较复杂,编译器会把包名和文件名进行排列组合,然后对所有的可能性进行类文件查找定位。例如:
package com;
import java.io.*;
import java.util.*;
1、使用格式
import pkgl[.pkg2[.pkg3…]].(类名I g-);
假设有一个包a,在a中的一个文件内定义了两个类XX和YY,其格式如下:
package a;
class XX{}
class YY{}
当在另外一个包b中的文件ZZ.java中使用a中的类时,语句形式如下:
package b;
import a.*;
class ZZ extends XX {}
在ZZ.java中,因引入了包a中的所有类,所以使用起来就好像是在同一个包中一样。
在程序中,可以引用包的所有类或若干类。引用所有类时,可使用通配符“*”。引入整个包时,可以方便地访问包中的每一个类,但会占用过多的内存空间,代码下载的时间将会延长,因此在了解包的基本内容后,实际要用到哪个类就引用哪个类,尽量不造成资源的浪费。
实际上,程序中不一定要有引用语句。当引用某个类的类与被引用的类存储在同一物理目录下时,就可以直接使用被引用的类。
2、分类
单类型导入:import java.io.File;
按需求类型导入:import java.io.*; 对于按需类型导入,有人误解为导入一个包下的所有类,其实不然,看名字就知道,他只会按需导入,也就是说它并非导入整个包,而仅仅导入当前类需要使用的类。
注:单类型导入和按需类型导入对类文件的定位算法是不一样的。java编译器会从启动目录(bootstrap),扩展目录(extension)和用户类路径下去定位需要导入的类,而这些目录仅仅是给出了类的顶层目录。编译器的类文件定位方法大致可以理解为如下公式:
顶层路径名 \ 包名 \ 文件名.class = 绝对路径
对于单类型导入很简单,因为包明和文件名都已经确定,所以可以一次性查找定位。
对于按需类型导入则比较复杂,编译器会把包名和文件名进行排列组合,然后对所有的可能性进行类文件查找定位。例如:
package com;
import java.io.*;
import java.util.*;
相关文章推荐
- SQL重复记录查询的几种方法
- 【开源】前端练手笔记,Chrome扩展应用程序(html+CSS+JS) (1)
- 关于Excel导入的HDR=YES; IMEX=1详解
- libpointmatcher的filter
- 动态库的创建与调用
- C++Windows下递归遍历多级目录
- iOS7二维码的使用
- 模拟Android多点触控
- iOS9 UI Tests
- 更改UILabel的字体样式及某段文字中的颜色
- 软件测试面试 (二)如何测试网页的登录页面 如何测试一个杯子 关于测试方法的
- 数据结构之简易词法分析(未包含错误分析)
- 关于append,appendTo,prepend,prependTo的区别
- SlideSwitch
- Dubbo简单介绍
- 求字符串的全部组合(字符串中无重复字符)
- 带GUI界面的重置域账号密码PowerShell脚本
- struts 2的类型转化
- ios编程--AVCapture编程理解
- 8.2.1.4 Index Merge Optimization 索引合并优化