java之package与import
我就以package与import开始吧。
package的作用其实就是c++的namespace的作用,防止名字相同的类产生冲突,只是实现的机制不一样,java编译器在编译时,直接根据package 指定的信息直接将生成的class文件生成到对应目录下。如package aaa.bbb.ccc 编译器就将该.java文件下的各个类生成到./aaa/bbb/ccc/ 这个目录底下。
有了package机制,导致使用不同类时候就很麻烦(指书写代码时候需要写更长),于是大神门就想出办法去偷懒了,然后就有了import机制。
假设./aaa/bbb/ccc/ 下的A类,如果没有使用import机制我们需要怎么实例化A类呢,应该是这样写:new aaa.bbb.ccc.A();
然后假如使用了import机制 import aaa.bbb.ccc.A 呢,我们代码里使用 应该写 new A()就可以了,也就是说编译器帮我们帮我们匹配并扩展了aaa.bbb.ccc.这串字符串。假如说我们一个文件里面需要好几个地方需要实例化A类,我们就少写了好几个aaa.bbb.ccc.,代码上会简洁很多。
根据以上说明应该能看出来,import 并没有像C++一样将指定头文件嵌入源文件中,而是将你的类名补全,所以当使用import机制比较多时,仅仅会关系到编译速度,但是不是特别大的项目,肯定是可以忽略不计的。