`
小网客
  • 浏览: 1241285 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

package-info.java文件那点事

    博客分类:
  • Java
 
阅读更多

首先,它不能随便被创建
在Eclipse中, package-info文件不能随便被创建,会报“Type name is notvalid”错误,类名无效,Java变量定义规范是:字母、数字、下划线,还有那个不怎么常用的$符号(顺带说下,Java是支持中文名称的变量,习惯挑战的同学可以尝试下,分享一下这方面的经验),这个中划线可不再之列,那怎么创建这个文件呢?
很简单,用记事本创建一个,然后拷贝进去再改一下就成了,更直接的办法就是从别的项目中拷贝过来一个,这更方便。

其次,服务的对象很特殊。
一个类是一类或一组事物的描述,比如Dog这个类,就是描述旺财的,那package-info这个类是描述啥的呢?它总要有一个被描述或被陈述的对象,它是描述和记录本包信息。

最后,类不能带有publicprivate访问权限
package-info.java再怎么特殊,也是一个类文件,也会被编译成package-info.class,但是在package-info.java中只能声明默认访问权限的类,也就是友好类。
其实还有几个特殊的地方,比如不可以继承,没有接口,没有类间关系(关联、组合、聚合等等)等。
这个文件的特殊性说完了,那再说说它有什么作用。

0
4
分享到:
评论

相关推荐

    开源项目经常看到 package-info.java 文件,到底有啥用?(csdn)————程序.pdf

    【package-info.java 文件的作用】 在Java编程中,`package-info.java`文件是一个特殊的源代码文件,它的主要功能是提供包级别的元数据,包括文档注释和包级别的变量。以下是其具体用途的详细解释: 1. **包级文档...

    开源项目中经常看到package-info.java文件,你知道其作用吗?.zip

    计算机技术、IT咨询、人工智能AI理论介绍,学习参考资料 计算机技术、IT咨询、人工智能AI理论介绍,学习参考资料 计算机技术、IT咨询、人工智能AI理论介绍,学习参考资料 计算机技术、IT咨询、人工智能AI理论介绍,...

    node-tgz-downloader:根据package-lock.json文件下载所有的node_modules

    本地package-lock.json文件 网址到package-lock.json 包装名称 本地package.json文件 网址到package.json 搜索关键词 安装 npm install node-tgz-downloader -g 用法 来自代码: const downloader = require ( '...

    WSDL2Java及axis2-1.5-bin.zip的包

    稍微复杂一些的,-p可以指定生成的package,-o指定生成的路径,-ss生成服务端代码wsdl2java -uri ../wsdl/currencyConvert.wsdl -o ../gen_src -ss -sd -g -p foo.bat再复杂一些,-ns2p 将namespace进行替换,多个...

    aws-java-sdk-s3-1.12.376.jar中文-英文对照文档.zip

    # 含有的 Java package(包)(此处仅列举3个): ``` com.amazonaws.auth com.amazonaws.auth.policy.actions com.amazonaws.auth.policy.conditions ...... ``` # 含有的 Java class(类)(此处仅列举3个): ``...

    flink-streaming-java_2.12-1.14.3-API文档-中文版.zip

    赠送Maven依赖信息文件:flink-streaming-java_2.12-1.14.3.pom; 包含翻译后的API文档:flink-streaming-java_2.12-1.14.3-javadoc-API文档-中文(简体)版.zip; Maven坐标:org.apache.flink:flink-streaming-java_...

    jdk-6u45-linux-x64-rpm.bin

    在Linux环境中,RPM(Red Hat Package Manager)是一种广泛使用的软件包管理器,用于安装、升级和管理软件。这个bin文件是一个可执行二进制文件,用户可以通过运行它来安装JDK。 描述中的"linux jdk 1.6 for X64...

    java-1.8.0-openjdk-devel-1.8.0.272.b10-1.el7_9.x86_64.rpm

    官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装

    sublime-package-master.zip

    "sublime-package-master.zip" 文件看起来是一个Sublime Text的汉化包,用于将Sublime Text的用户界面翻译成中文,方便中文用户使用。这个压缩包可能包含了各种汉化的资源文件,如语言文件、菜单、提示信息等。 在...

    jdk-6u45-linux-i586-rpm.bin

    这个文件采用RPM(Red Hat Package Manager)格式,这是一种在Linux系统中广泛使用的软件包管理器,用于安装、升级和管理软件。 描述中的"//linux jdk 1.6 x86"进一步确认了这是一个适用于Linux平台的JDK,版本为...

    java-1.8.0-openjdk-1.8.0.242-3.b08.redhat.windows.x86_64.msi

    openjdk windows下安装 无需自己打包,下载后直接双击msi文件进行安装。

    javacv-1.5.5.jar中文文档.zip

    # 含有的 Java package(包): ``` cl.eye org.bytedeco.javacv ``` # 含有的 Java class(类)(此处仅列举3个): ``` cl.eye.CLCamera org.bytedeco.javacv.AndroidFrameConverter org.bytedeco.javacv....

    commons-fileupload-1.2.jar和commons-io-1.3.2.jar

    新建一个servlet: FileUpload.java用于文件上传: package com.drp.util.servlet; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet....

    commons-net-3.6.jarjakarta-oro-2.0.8.jar

    标题 "commons-net-3.6.jarjakarta-oro-2.0.8.jar" 提到的是两个关键的Java库文件,它们在Java编程中用于处理特定任务,特别是与FTP(File Transfer Protocol)相关的操作。这两个文件是Apache Commons Net 3.6版本...

    Assignment1StudentPackage-2.zip

    【标题】"Assignment1StudentPackage-2.zip" 是一个压缩文件,通常用于存储多个相关文件或文件夹,便于传输和管理。在IT领域,这样的压缩文件格式广泛应用于项目分配、学术作业、软件开发等场景。它允许用户将大量...

    apache-maven-3.2.3-bin.tar.gz

    在Java开发中,Maven解决了依赖管理的复杂问题,通过声明式地在POM.xml文件中列出项目依赖,Maven会自动下载并管理这些依赖。3.2.3是Maven的一个稳定版本,它包含了之前版本的改进和修复,提高了构建效率和稳定性。 ...

    Mybatis逆向生成工具mybatis-generator-core-1.3.2.jar包

    首先,MyBatis Generator基于数据库表结构,通过配置文件指定数据库连接信息、表名以及需要生成的代码类型,然后运行MBG工具,它会根据这些信息生成对应的Java源代码和XML配置文件。这些生成的代码包括: 1. 实体类...

    snappy-java-1.1.2.6.zip

    如果你想要编译和使用`snappy-java`,你需要一个Java开发环境(JDK)和Maven,通过运行`mvn compile`和`mvn package`命令,可以编译源码并生成可执行的JAR文件。 在实际应用中,`SnappyCompressor`和`...

    javacv-1.5.3.jar中文-英文对照文档.zip

    # 含有的 Java package(包): ``` cl.eye org.bytedeco.javacv ``` # 含有的 Java class(类)(此处仅列举3个): ``` cl.eye.CLCamera org.bytedeco.javacv.AndroidFrameConverter org.bytedeco.javacv....

Global site tag (gtag.js) - Google Analytics