JAVA-初步认识-第十二章-面向对象(导入import)
一.
讲到现在发现,有包不如没包,源程序中书写类名要写很长(类名的前缀包很多时)。类文件的层次结构太多,包太多,显得很麻烦。
如果不愿意写这么长的名字,我们有一些解决办法。我们可以通过一个关键字来做这件事情,让你能实现相同的功能。
上图就是导入DemoA的包,我觉着导入就意味着将位置由所属的其它包,变为了本包的位置。这样可以更为方便的使用。
如果其他包里还有其他的类也要使用,那就继续往里面导入。
有人说,这样很麻烦,可以用简单的方法,就是通配符。统统都匹配的符号。
用*来代替所有。
现在packa包里面,同一级既有包又有class文件。现在问,如果写成import packa.*,能不能构建DemoAbc类的对象?
答案是不可以,import导入的是包中的类,不导入包中的包。那么这样一来,子包abc就无法导入,其里面的DemoAbc.class也无法导入。
要想导入包中包的类文件,可以写成下面这样,
真正开发的时候,不建议写*号。因为类文件比较多,不可能全部导入。
导包的原则,用到哪个类,就导入哪个类。
那么如果用到几十个类,还要导入几十个import么?是的。
高级编译器,不用你写import,一个键,它自动全部导入。几百行的import语句,它自动帮你完成。连package都不写,它自动帮你完成。这些都是固定代码,自动生成。
一个.java文件里只能有一个package,但是可以有多个import。
咱们导的不是包,导的包中的类。