Java import 与 C++ #include 的区别
- C++ #include 会把档案内容加载进来
- 而 Java Import 只是帮忙节省打字
package 和 class 的关系
- package 比作姓氏,class 就是名字
- 使用 Sun 规范来取套件名称,名称因此很长
- 为了避免长名称,Sun 使用 import
- 为了避免一个姓的类太多,Sun 提供了 *
如:import java.io.*
- 使用 Sun 规范来取套件名称,名称因此很长
import 导入声明
- 单类型导入,如:
import java.util.ArrayList
- 按需类型导入,如:
import java.util.*
- 使用按需导入声明不会降低 Java 代码的执行效率
- 注意:
- 只有 public 的类和接口才能被导入
- 导入声明,只导入类型而不导入子包
- 导入的类或接口的简名具有编译单元作用域
- 使用类型自身的简名
- Java 编译器产生的类文件仅包含编译单元实际使用到的类或接口的符号引用
放弃 import * 的理由
- 编译速度
- 命名冲突
- 说明问题
- 无名包问题
Sun 的工程师一般不使用按需类型导入声明。