C++程序员学Java系列之⼆五:包(package)
Java 包(package)
java的包,其实就是我们电脑系统中的⽂件夹,包⾥存放的是类⽂件。
当类⽂件很多的时候,通常我们会采⽤多个包进⾏存放管理他们,这种⽅式称为分包管理。
import语句在项⽬中,我们将相同功能的类放到⼀个包中,⽅便管理。并且⽇常项⽬的分⼯也是以包作为边界。
类中声明的包必须与实际class⽂件所在的⽂件夹情况相⼀致,即类声明在a包下,则⽣成的.class⽂件必须在a⽂件夹下,否则,程序运⾏时会不到类。
为了更好地组织类,Java提供了包机制,⽤于区别类名的命名空间。
包的作⽤
1 把功能相似或相关的类或接⼝组织在同⼀个包中,⽅便类的查和使⽤。
2 如同⽂件夹⼀样,包也采⽤了树形⽬录的存储⽅式。同⼀个包中的类名字是不同的,不同的包中的类的名字是可以相同的,当同时调⽤两个不同包中相同
类名的类时,应该加上包名加以区别。因此,包可以避免名字冲突。
3 包也限定了访问权限,拥有包访问权限的类才能访问某个包中的类。
Java使⽤包(package)这种机制是为了防⽌命名冲突,访问控制,提供搜索和定位类(class)、接⼝、枚举(enumerations)和注释(annotation)等。
包语句的语法格式:
通常使⽤公司⽹址反写,可以有多层包,包名采⽤全部⼩写字母,多层包之间⽤”.”连接
package pkg1[.pkg2[.pkg3…]];
注意:声明包的语句,必须写在程序有效代码的第⼀⾏(注释不算)
例如,⼀个Something.java ⽂件它的内容
package net.java.util
public class Something{
...
}
那么它的路径应该是 net/java/util/Something.java 这样保存的。其⽂件⽬录下有真实的有其相应在⽂件夹及⽂件。
其作⽤类似于C++,C#中的namespace
创建包
/* ⽂件名: Animal.java */
package animals;
在同⼀个包下(即⽂件夹下),可以不⽤import 即可访问使⽤其同⼀包下的其它类或接⼝。
当我们要使⽤的类,与当前程序不在同⼀个包中(即不同⽂件夹中),既要import, 也要访问的类必须⽤public修饰才可访问。
import关键字
为了能够使⽤某⼀个包的成员,我们需要在 Java 程序中明确导⼊该包。使⽤"import"语句可完成此功
能。
类似于C++的#include "路径+⽂件名.h"
在 java 源⽂件中 import 语句应位于 package 语句之后,所有类的定义之前,可以没有,也可以有多条,其语法格式为:
import package1[.package2…].(classname|*);
如果在⼀个包中,⼀个类想要使⽤本包中的另⼀个类,那么该包名可以省略。
如果不在同⼀包内,则必须要import
例如:paryroll下有A.java, B.java, C.java
⽤import关键字引⼊所有类,可以使⽤通配符"*",表⽰导⼊其包下的所有类
import payroll.*;
使⽤import关键字引⼊某个具体的类,如A.java类
import payroll.A;
注意:
类⽂件中可以包含任意数量的import声明。import声明必须在包声明之后,类声明之前。
import导包代码书写的位置:在声明包package后,定义所有类class前,使⽤导包import包名.包名.类名;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论