package-info.java对于日常业务开发的开发者来说,可能有点陌生,如果我们再项目中创建一个package-info.java,你会发现该类只有一个packge,如下
我们无法在该java文件中定义public的类
但事实上,package-info.java还有它的作用和使命。
我们来看下,最常见的作用
包说明
package-info.java可以描述一个包的作用,常常我们定义包,如果包中没有内容,包名会自动到下一层,如下图
可以通过给a包下面添加package-info.java做一些说明,从而让包有层级
同时添加一些说明
添加注解
前面我们介绍过Java注解,详情可看 Java注解开发及原理
注解中有一种作用域package,如下图
代码中可以通过反射拿到注解,对某一包下面的类做一些定制化的操作,如下图
声明友好类和包常量
虽然package-info中不能定义public和private的类,我们可以定义friendly的类及包常量,提供给统一包下面的类进行共享,如下
包中的类,可以直接使用,如下
看到这里,相信大家已经知道了package-info的作用了。