Java包(package)详解

java包的做用是为了区别类名的命名空间  java

一、把功能类似或相关的类或接口组织在同一个包中,方便类的查找和使用。、函数

二、如同文件夹同样,包也采用了树形目录的存储方式。同一个包中的类名字是不一样的,不一样的包中的类的名字是能够相同的,spa

当同时调用两个不一样包中相同类名的类时,应该加上包名加以区别。所以,包能够避免名字冲突。blog

三、包也限定了访问权限,拥有包访问权限的类才能访问某个包中的类。接口

建立包

建立包的时候,你须要为这个包取一个合适的名字。以后,若是其余的一个源文件包含了这个包提供的类、接口、枚举或者注释类型的时候,都必须将这个包的声明放在这个源文件的开头。域名

包声明应该在源文件的第一行,每一个源文件只能有一个包声明,这个文件中的每一个类型都应用于它。class

若是一个源文件中没有使用包声明,那么其中的类,函数,枚举,注释等将被放在一个无名的包(unnamed package)中。test

例子

让咱们来看一个例子,这个例子建立了一个叫作animals的包。一般使用小写的字母来命名避免与类、接口名字的冲突。import

在 animals 包中加入一个接口(interface):互联网

/* 文件名: Animal.java */
package animals;
 
interface Animal {
   public void eat();
   public void travel();
}

  接下来,在同一个包中加入该接口的实现:

package animals;
 
/* 文件名 : MammalInt.java */
public class MammalInt implements Animal{
 
   public void eat(){
      System.out.println("Mammal eats");
   }
 
   public void travel(){
      System.out.println("Mammal travels");
   } 
 
   public int noOfLegs(){
      return 0;
   }
 
   public static void main(String args[]){
      MammalInt m = new MammalInt();
      m.eat();
      m.travel();
   }
}

  

import 关键字

为了可以使用某一个包的成员,咱们须要在 Java 程序中明确导入该包。使用 "import" 语句可完成此功能。

在 java 源文件中 import 语句应位于 package 语句以后,全部类的定义以前,能够没有,也能够有多条,其语法格式为:

import package1[.package2…].(classname|*);

  若是在一个包中,一个类想要使用本包中的另外一个类,那么该包名能够省略。

一般,一个公司使用它互联网域名的颠倒形式来做为它的包名.例如:互联网域名是 runoob.com,全部的包名都以 com.runoob 开头。包名中的每个部分对应一个子目录。

例如:有一个 com.runoob.test 的包,这个包包含一个叫作 Runoob.java 的源文件,那么相应的,应该有以下面的一连串子目录:

....\com\runoob\test\Runoob.java
相关文章
相关标签/搜索