JAVA包的基本概念与使用(java包的定义和使用方法)

createh52个月前 (02-01)技术教程13

包是java中基本的存在,是一个java程序的基本运行单位,也是在总体环境下区分不同java的程序的单位。

java中的包简单的理解就是文件夹,每一个包下都以有.java文件和子包,一旦一个.java文件位于包下,那么需要在这个.java文件的第一行位置命名此类所处位置,同一个包下不能存在相同名称的.java文件。创建包时只需要在项目目录下创建文件夹即可。

包在.java文件中的基本使用格式:

如果java程序的路径结构如下:

com

cuggw

school

Main.java

那么在Main.java文件中包的书写格式如下:

package com.cuggw.school;

使用包

定义当前java类所属包:

//作为类文件第一行代码出现
package com.cuggw.school;

导入其他包下的类文件:

import 包名.类名;//如果是多级包,那么包名之间用 . 隔开
import com.cuggw.school.Main;//导入com包下cuggw包下school包下的Main类。

包的作用

1、根据包规划程序,每个程序的基础都是包,同时也方便导入外部依赖。

2、把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用,相当于把需要的类封装到一起。

3、不同包下可以有相同名称的.java文件,可能存在一种情况:类名相同但是实现的功能不同。这时就需要用到包将相同名称的类分隔开来。

4、访问限定的作用域有一部分是按照包来划分的,可以根据类的不同访问情况规划作用域并分配到各个包中。

package-info.java文件

每个包下都可以建立一个固定的package-info.java,并可以在其中定义类和包注解。

package-info.java文件不能通过ide内部的选项new Class创建,因为 “package-info”这个名字不符合java语言的class命名规范。所以必须通过新建一个文件并指定其后缀名创建。

package-info.java等同于普通的JAVA类文件,只是内部只能定义默认修饰符的类。

作用:

包上标注注解,@Taget注解的参数要包含ElementType.PACKAGE。

声明默认修饰符的类(默认修饰符的类的作用域只限于本包),比如定义一些只限于本包下的设置常量和者工具类,定义与普通类无两样。

提供包的注释描述,为了生成api文档。

包注解

包上标注注解,@Taget注解的参数要包含ElementType.PACKAGE。

在包上添加注解:

@包注解名称
package 包名;

在普通的java类文件中是无法在包名上方添加注解的。

获取包上的注解:

使用格式:

//利用反射创建包对象
String pkgName = "com.company"; //要写全包名

Package pkg = Package.getPackage(pkgName);

//获得包上的注解
Annotation[ ] annotations = pkg.getAnnotations();

相关文章

文件后缀,也称为文件扩展名,用于标识文件的类型

文件后缀,也称为文件扩展名,用于标识文件的类型,帮助操作系统确定使用何种程序来打开文件。这里列举一些常见的文件后缀名及其所代表的文件类型:? 文本文件:? .txt:纯文本文件? .doc、.docx...

代工到研发,我给康师傅做自动化码垛产线 | 中德制造业研修院

文 / 巴九灵前两天,苹果CEO库克称芯片短缺限制iPad和Mac销量的发言登上了热搜,在一溜奥运新闻中特别显眼。事实上,从年初起,半导体产业就隔三差五登上热搜,尤其当它与“华为”“中芯”“造车”等自...

Java 如何执行字节码?一文解析!(jvm执行字节码过程)

Windows 操作系统上编译的 Java 程序,不经过修改就能够直接在 Linux 操作系统上运行;与之对比的是 C 语言,在 Linux 平台编译的 C 程序,一般情况下如果不进行特殊的转换,那么...

Java 基础:基础知识(java基础知识汇总)

目录:一、Java 概述1. Java体系2. 常用的DOS命令3. JDK、JRE、跨平台、Java平台4. Java代码的编写执行过程5. 注释6. 关键字、标识符7. Java中的数据类型8....

自学Java入门——什么是编译?为什么代码需要进行编译?

相信有很多的小伙伴,都对编程抱有着较强的兴趣,或许是爱好,或许是想转行。不过我感觉大多数人想学习编程的话,都是为了工作,如今信息如此发达的时代,网上的资料那么多,但是想去学习却不知道从哪里开始,学习的...

Java 序列化(java序列化效果测试)

Java 提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列,该字节序列包括该对象的数据、有关对象的类型的信息和存储在对象中数据的类型。将序列化对象写入文件之后,可以从文件中读取出...