Java ---import语句
(一)import语句的作用
在编写程序是,除了自己编写类外,我们可能会使用到Java提供的许多类,这样避免了我们重头开始写,这也是面向对象编程的一个重要方面。
一句话: 使用import语句可以引入包中的类。
(二)语法形式
(3)使用 import语句用类库中的类
一个Jav源程序中可以有多个import语句,他们必须写在package语句(如果有package语句的话)和源文件中类的定义之间。Java提供了大约130个包,包括以下:
包 | 作用含义 |
java.applet | 包含所有的实现Java Applet 的类 |
java.awt | 包含抽象窗口工具集中的图形、文本、窗口GUI类 |
ava.awt. image | 包含抽象窗口工具集中的图像处理类 |
jjava.lang | 包含所有的基本语言类 |
java.io | 包含所有的输入输出类 |
java.net | 包含所有实现网络功能的类 |
java.util | 包含有用的数据类型类 |
要点:
① 如果要引入一个包中的全部类,则可以用“*”来代替,如 import java.awt.*;表示引入包java.awt中所有的类,而 import java.util.Date;表示只是引用java.util中的Date类。
② 系统自动引用java.lang这个包的全部类,不需要import语句引入该包中的类。
(4)避免类名混淆
在一个源文件使用一个类时,只要不引起混淆,就可以省略该类的包名。但在某些特殊
情况下不能省略包名。
①区分无包名和有包名的类
如果一个源文件使用了一个无名包中的类,如Triangle类,又用import语句引入了某个
有包名的同名的类,如tom.jiafei 中的Triangle类,就可能引起类名的混淆。
如果源文件明确地引入了该类,如 import tom.jiafei.Triangle;当使用Triangle类时,如果省略包名,那么源文件使用的是tom.jiafei 包中的Triangle类,即源文件将无法使用无名包中的Triangle类。如果想同时使用tom.jiafei包中的Triangle类和无名包中的Triangle类,就不能省略包名。例如:
Triangle a1=new Triangle();
tom.jiafei.Triangle a2=new tom.jiafei.Triangle();
那么,a1是无包名Triangle类创建的对象,a2是tom.jiafei包中的Triangle类创建的对象。
如果源文件使用通配符*引入了包中的全部的类:import tom.jiafei.*;
使用Triangle 类时使用Triangle类时,如果省略包名,那么源文件使用的无名包中的Triangle 类,即源文件格无法使用 tom jiafei 中的 Triangle 类。如果想同时使用 tomjiafei 包中的 Triangle 类和无名包+的Triangle类,就不能省略包名。例如:
Triangle al=new Triangle();
tom.jiafei. Triangle a2=new tom.jiafei.Triangle();
那么,a1是无包名Triangle类创建的对象,a2是tom.jiafci包中的Triangle类创建的对象。
(2)区分有包名的类
如果一个源文件引入了两个包中同名的类,那么在使用该类时不允许省略包名,如引入
tom.jiafei 包中的AA类和sun.com包中的AA类,那么程序在使用AA类时必须带有包名:
tom.jiafei.AA rose=new tom.jiafei.AA();
sum.som.AA rose =new sun.com.AA();
来源地址:https://blog.csdn.net/qq_63976098/article/details/129810005
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341