2021-04-18 11:02  阅读(103)
文章分类:Java 基础教程 文章标签:JavaJava 教程
©  原文作者:w3cschool 原文地址:https://www.w3cschool.cn/java/java-class-instance.html

Java面向对象设计 - Java注释

什么是注释?

Java中的注释允许我们将元数据与程序元素相关联。

程序元素可以是包,类,接口,类的字段,局部变量,方法,方法的参数,枚举,注释,泛型类型/方法声明中的类型参数,等等。

我们可以在Java程序中注释任何声明或类型。注释在任何其他修饰符(public,private,final,static等)的程序元素的声明中用作修饰符。

与修饰符不同,注释不会修改程序元素的含义。它是程序元素的注释。

声明注释类型

声明注释类型类似于声明接口类型。

注释类型是一种特殊类型的接口类型。

我们使用前面带有@符号的interface关键字来声明注释类型。

以下是声明注释类型的一般语法:

    <modifiers> @interface <annotation-type-name>  {
        // Annotation type body
    }
    

注释声明的与接口声明的相同。

我们可以将注解类型声明为public或package级别。

@符号和interface关键字可以用空格分隔,也可以放在一起。

按照惯例,它们被放在一起作为@interface

interface关键字后面是注释类型名称。它应该是有效的Java标识符。

注释类型正文放在大括号中。

以下代码创建注释以使用版本信息注释程序元素。

    public  @interface  Version {
        int  major();
        int  minor();
    }
    

我们在Version注释类型中声明了两个抽象方法:major()和minor()。

注释类型中的抽象方法称为元素。

注释可以声明零个或多个元素,它们被声明为抽象方法。抽象方法名称是注释类型的元素的名称。

在上面的代码中,我们为Version注释类型声明了两个元素major和minor。两个元素的数据类型都是int。

我们需要导入注释类型,方式与导入任何其他类型的方式相同。

注释实例

要创建注释类型的实例并使用它来注释程序元素,我们使用以下语法:

    @annotationType(name1=value1,  name2=value2, names3=values3...)
    

注释类型前面带有一个@符号,后面跟着用括号括起来的逗号分隔的name = value对列表。

name=value对中的名称是在注释类型中声明的元素的名称,值由用户提供。

name=value对不必按照在注释类型中声明的顺序显示。

以下代码使用Version类型的注释,主要元素值设置为1,次要元素值设置为0。

    @Version(major=1, minor=0)
    

我们可以使用注释类型的完全限定名

    @com.w3cschool.annotation.Version(major=0,  minor=1)
    

我们可以将类声明注释为

    @Version(major=1, minor=0)
    public  class  VersionTest {
    
    }
    

我们可以将程序元素的注释与其他修饰符混合使用。

    @Version(major=1, minor=0)  public  class  VersionTest {
    }
    
    public  @Version(major=1, minor=0)  class  VersionTest {
    }
    

完整的源代码

    @interface Version {
      int major();
    
      int minor();
    }
    
    @Version(major = 1, minor = 0)
    public class Main {
      @Version(major = 1, minor = 1)
      private int xyz = 110;
    
      @Version(major = 1, minor = 0)
      public Main() {
      }
    
      @Version(major = 1, minor = 1)
      public Main(int xyz) {
        this.xyz = xyz;
      }
    
      @Version(major = 1, minor = 0)
      public void printData() {
      }
    
      @Version(major = 1, minor = 1)
      public void setXyz(int xyz) {
    
        @Version(major = 1, minor = 2)
        int newValue = xyz;
    
        this.xyz = xyz;
      }
    }
    
点赞(0)
版权归原创作者所有,任何形式转载请联系作者; Java 技术驿站 >> Java 注释
上一篇
Java 枚举比较
下一篇
Java 对注释类型的限制