51Testing软件测试网]2S+K"rZ/bP*j

程序员可以使用两种import语句:51Testing软件测试网o$UN5EQh

3oZc4n f9P"CoQ;T]0单类型导入(single-type-import),例如import java.io.File;aY4X8yZ!D.Hz*]051Testing软件测试网f/D)E:?

W

按需类型导入(type-import-on-demand),例如 import java.io.*;]f{/[+W,VUK051Testing软件测试网7`!q:Mbh

关于这两种导入类型大家各有所爱,众说纷纭。这里分析一下这两种导入类型的大致工作原理供大家参考。51Testing软件测试网]OI^e ?k`#{/dsc51Testing软件测试网;GPn$DGC

单类型导入比较好理解,仅仅导入一个public类或者接口。而对于按需类型导入,有人误解为导入一个包下的所有类,其实不然,看名字就知道,他只会按需导入,也就是说它并非导入整个包,而仅仅导入当前类需要使用的类。:\]YND;?0}T o?0

6g@[-s+`:]0既然如此是不是就可以放心的使用按需类型导入呢?非也,非也。因为单类型导入和按需类型导入对类文件的定位算法是不一样的。java编译器会从启动目录(bootstrap),扩展目录(extension)和用户类路径下去定位需要导入的类,而这些目录进仅仅是给出了类的顶层目录。编译器的类文件定位方法大致可以理解为如下公式:51Testing软件测试网7r,Kg|NuBX}?K51Testing软件测试网u*^.G5W*`FW

顶层路径名 \ 包名 \ 文件名.class = 绝对路径3C.Wik&|DR9RgO051Testing软件测试网*P-l1Jq CK#~h/D4j

对于单类型导入很简单,因为包明和文件名都已经确定,所以可以一次性查找定位。51Testing软件测试网@} Aur\3N0?51Testing软件测试网8g8_{*[*R$H)@w:?

对于按需类型导入则比较复杂,编译器会把包名和文件名进行排列组合,然后对所有的可能性进行类文件查找定位。例如:51Testing软件测试网gpA~'Hn G)T51Testing软件测试网_^ s*s^$t

package com;51Testing软件测试网l:J1L)A/yq*_0u

9h:fw+wi"Se1u0import java.io.*;51Testing软件测试网+e9E0r0s:HRk5R51Testing软件测试网0@P0Vr"Y A

import java.util.*;51Testing软件测试网A;Y~p{#}-J#l pC

${eX)G aT,s,F0当你的类文件中用到了File类,那么可能出现File类的地方如下Wz1?%C?UR0

u+_m3A^-Q0File  \\ File类属于无名包,就是说File类没有package语句,编译器会首先搜索无名包;T9o+~?FaBz0

tL4?'b'~{,y O)m0com.File \\ File类属于当前包JnFb5c9l0GGM0

java对import语句_Java的import语句 - 不积跬步,无以至千里 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...相关推荐

  1. 重新认识java(零) --- 不积跬步无以至千里

    好高骛远,眼高手低,是你前进路上最大的绊脚石 - 致走在学习道路上的人 p.s. 本篇文章没有技术含量. 关于自己 先说说我自己吧.目前是一名软件工程的大三学生.前几天一直在迷茫:究竟是技多不压身还是 ...

  2. python 动态执行条件判断_【人生苦短,我学 Python】基础篇——条件判断与循环语句(Day12)_不积跬步,无以至千里!-CSDN博客...

    原文作者:AI 菌 原文标题:[人生苦短,我学 Python]基础篇--条件判断与循环语句(Day12) 发布时间:2021-02-08 23:17:06 写在前面:大家好!我是[AI 菌],一枚爱弹 ...

  3. java软件测试经典案例,java语言编程案例 - Mrsjjl的个人空间 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...

    1.编程实现:二分搜索算法 解答: public class SearchTest { /** 被搜索数据的大小 */ private static final int size = 5000000; ...

  4. 软件测试查询语句例题,SQL查询经典例题 - 青苹果测试博客 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...

    通过以下习题的练习,我们能快速熟悉掌握sql语句查询的语法和要领,大家要用心领会其中的要领和步骤,要学会分析步骤. 一.单表查询练习 1.查询,查询学生"张三"的全部基本信息 Se ...

  5. java字母反过来_java之字母反转~~ - Plight - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...

    字符串的反转输出 这也是面试题中常考的一道.我们就以一个包含了全部26个英文字母,同时又具有完整含义的最短句子作为例子来完成解答.先来看一下这个句子: 引用 A quick brown fox jum ...

  6. java 测试排序_java排序的几种方法 - 善待自己的个人空间 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...

    冒泡:publicclassBubbleSort { publicstaticvoidbubbleSort(int[] array) { intlength = array.length -1; fo ...

  7. Java帧率,android应用性能优化之帧率 - hellominefriend的个人空间 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...

    转自:http://www.cnblogs.com/myzh/archive/2013/03/17/2965225.html 1.纵观全局 对于顺畅度的分析,首先要知道一个整体情况,是局部,还是全局, ...

  8. java自定义findbugs规则,定制 findbugs规则 - 阿里巴巴一个测试架构师 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...

    这类文章极少,字节码操作需要对becl库及jvm字节码操作有一定常识.参考: http://blog.csdn.net/lywybo/archive/2010/03/01/5335748.aspx i ...

  9. java循环语句_java中循环语句

    java中的循环语句主要包括while (){}语句,for(){}语句,do{}while()语句 一.while语句: while语句的使用情况是不知道循环次数的是使用. 格式: while(判断 ...

最新文章

  1. 【HDU】3308 LCIS
  2. 再获“国资”加持,车置宝获南京银行2亿债权融资支持...
  3. c莫比乌斯函数_代佳璇缘起一条莫比乌斯环,我爱上了难缠的数学!
  4. java 08_java 08 权限修饰符 编译运行
  5. JVM、GC看这一篇就够了!
  6. 核心技术靠化缘是要不来的——自己动手写ORM框架
  7. 嵌入式linux 自动获取IP 及 自动校时
  8. thinkphp省略php,ThinkPHP的截取字符串函数无法显示省略号的解决方法
  9. 8种图数据库对 NULL 属性值支持情况
  10. python中不被定义_一日一技:在Python中双下划线私有方法不能被调用的原理
  11. Silverlight4 麦克风应用-录音机
  12. HTC V版M7解锁刷机笔记
  13. H3C Comware的作用
  14. matlab数值分析代码,数值分析matlab代码
  15. 什么是网站跳出率?一招教你如何处理高跳出率?
  16. 无线服务器dns怎么设置方法,怎么设置无线路由器的dns
  17. 麻雀虽小五脏俱全--一个小项目的总结
  18. 计算机潮流分析22节点,第三章电力系统潮流分析与计算第七讲电力网络方程和矩阵及功率方程_255903070...
  19. Linux系统Word转换PDF,文档字体乱码不显示问题解决
  20. 【Hackathon】基于RKNPU2给FastDeploy仓库贡献代码

热门文章

  1. 如何隐藏SAP CRM WebClient UI配置页面的字段
  2. 使用Javap分析Java代码里的static final的工作原理
  3. Visitor(访问者)模式在SAP CDS view测试框架中的灵活运用
  4. SAP UI5和angular里的常量定义
  5. SAP CRM,C4C和Hybris的product Cockpit
  6. Fiori hide Header text in task list
  7. SAP Netweaver gateway cache table logic
  8. How to find root cause of creation navigation failure
  9. Cloud for Customer元数据的加载
  10. Appointment在SPRO里的date profile配置