【Java】包的定义和导入

Java 语言引入“包”这个机制,使类具有多层命名空间,有效解决了类的命名冲突、类文件管理等问题。

通俗来讲,一个“包”就是一个文件夹,用来存放 Java 源文件和编译生成的字节码文件。

借助“包”,可以将自己定义的类和其他类库中的类分开管理。

 

1.包的定义

package test;   //定义包

package com.baidu.search.utils;   //定义多级包

 

知识点:

  • package 语句必须作为 Java 源文件的第一条非注释语句。
  • 一个 Java 源文件中只能有一条 package 语句。
  • Java 源文件中可以定义多个类,在声明包之后,这些类生成的字节码文件,将全部位于这个包下。
  • 多个 Java 源文件可以声明同一个包,即多个 Java 源文件,可以存放在同一个文件夹下。
  • 多级包相当于嵌套的文件目录,如 “com baidu search utils” 目录,Java 源文件和编译生成的字节码文件都将存放在 utils 子目录下。
  • 多级包建议写成 “ 公司域名反写 . 项目名 . 模块名” 的形式。例如,"com.baidu" “search” “utils” 分别对应 “公司域名反写” “项目名” “模块名”。

 

2.导入包

Java 中一个类可以访问同一个包下的其他类,但如果需要访问其他包中的类,则需要使用 import 语句导入该类所在的源文件,格式如下:

import 包名.*;   //导入指定包中的所有类

import 包名.类名;   //导入指定包中的指定类

 

知识点:

  • import 语句不是必须的,完整包名.类名 变量名 = new 完整包名.类名(); 这种形式也是可以的。
  • 当导入的两个或多个包,具有同名的类时,编译器将会无法区分,需要使用 完整包名.类名 变量名 = new 完整包名.类名(); 的形式加以区分。
  • 一个 Java 源文件中只能有一条 package 语句,但可以有多条 import 语句。
  • import * 只能导入当前包中的源文件,子文件夹下的源文件不能被导入。

 

控制台命令语句:

打包:package com.edu.ysu;

编译:javac -d . PackageDemo.java

运行:java com.edu.ysu.PackageDemo

导入:import com.edu.ysu.*;

原文地址:https://www.cnblogs.com/bjxqmy/p/13269894.html