模块 java.compiler

枚举类枚举类 SourceVersion

java.lang.Object
java.lang.Enum <SourceVersion >
javax.lang.model.SourceVersion
所有已实现的接口:
Serializable , Comparable<SourceVersion> , Constable

public enum SourceVersion extends Enum <SourceVersion >
Java 编程语言的源版本。见相应的版本Java 语言规范有关特定源版本的信息。

请注意,将添加额外的源版本常量来模拟该语言的未来版本。

自从:
1.6
参见:
  • 枚举常量详细信息

  • 方法详情

    • values

      public static SourceVersion [] values()
      返回一个数组,其中包含此枚举类的常量,按照它们声明的顺序排列。
      返回:
      包含此枚举类常量的数组,按照它们声明的顺序排列
    • valueOf

      public static SourceVersion  valueOf(String  name)
      返回具有指定名称的此类的枚举常量。字符串必须匹配确切地用于在此类中声明枚举常量的标识符。 (不允许使用无关的空白字符。)
      参数:
      name - 要返回的枚举常量的名称。
      返回:
      具有指定名称的枚举常量
      抛出:
      IllegalArgumentException - 如果此枚举类没有具有指定名称的常量
      NullPointerException - 如果参数为空
    • latest

      public static SourceVersion  latest()
      返回可以建模的最新源版本。
      返回:
      可以建模的最新源版本
    • latestSupported

      public static SourceVersion  latestSupported()
      返回当前执行环境完全支持的最新源版本。必须返回 RELEASE_9 或更高版本。
      API 注意:
      此方法与 latest() 一起包含,以允许识别语言模型 API 在与 API 建模的最新版本不同的平台版本上运行的情况。发生这种情况的一种方式是,如果 IDE 或类似工具正在使用 API 来建模源版本N在平台版本上运行时(N- 1). API 支持在此配置中运行。在早于 (N- 1) 或晚于N可能会也可能不会作为实现细节。如果注解处理器正在生成要在当前执行环境下运行的代码,则处理器应仅使用 latestSupported 版本之前的平台功能,该版本可能早于 latest 版本。
      返回:
      当前执行环境完全支持的最新源版本
    • isIdentifier

      public static boolean isIdentifier(CharSequence  name)
      返回 name 是否是最新源版本中语法上有效的标识符(简单名称)或关键字。如果名称由 Character.isJavaIdentifierStart(int) 返回 true 的初始字符组成,后跟仅 Character.isJavaIdentifierPart(int) 返回 true 的字符,则该方法返回 true。此模式匹配常规标识符、关键字、上下文关键字和文字 "true""false""null"。该方法为所有其他字符串返回 false
      参数:
      name - 要检查的字符串
      返回:
      true 如果此字符串是语法上有效的标识符或关键字,false 否则。
      Java 语言规范:
      3.8 标识符
    • isName

      public static boolean isName(CharSequence  name)
      返回 name 是否是最新源版本中语法上有效的限定名称。从句法上讲,限定名称是由句点字符(“.”)分隔的标识符序列。此方法将输入字符串拆分为以句点分隔的段,并依次对每个段应用检查。与 isIdentifier 不同,此方法为任何段中的关键字、布尔文字和空文字返回 false。此方法返回 true上下文关键词.
      参数:
      name - 要检查的字符串
      返回:
      true 如果此字符串是语法上有效的名称,false 否则。
      Java 语言规范:
      3.9 关键词
      6.2 名称和标识符
    • isName

      public static boolean isName(CharSequence  name, SourceVersion  version)
      返回 name 是否是给定源版本中语法上有效的限定名称。从句法上讲,限定名称是由句点字符(“.”)分隔的标识符序列。此方法将输入字符串拆分为以句点分隔的段,并依次对每个段应用检查。与 isIdentifier 不同,此方法为任何段中的关键字、布尔文字和空文字返回 false。此方法返回 true上下文关键词.
      参数:
      name - 要检查的字符串
      version - 要使用的版本
      返回:
      true 如果此字符串是语法上有效的名称,false 否则。
      Java 语言规范:
      3.9 关键词
      6.2 名称和标识符
      自从:
      9
    • isKeyword

      public static boolean isKeyword(CharSequence  s)
      返回 s 是否是最新源版本中的关键字、布尔文字或空文字。此方法返回 false上下文关键词.
      参数:
      s - 要检查的字符串
      返回:
      true 如果 s 是关键字、布尔文字或空文字,否则为 false
      Java 语言规范:
      3.9 关键词
      3.10.3 布尔文字
      3.10.8 空文字
    • isKeyword

      public static boolean isKeyword(CharSequence  s, SourceVersion  version)
      返回 s 是否为给定源版本中的关键字、布尔文字或空文字。此方法返回 false上下文关键词.
      参数:
      s - 要检查的字符串
      version - 要使用的版本
      返回:
      true 如果 s 是关键字、布尔文字或空文字,否则为 false
      Java 语言规范:
      3.9 关键词
      3.10.3 布尔文字
      3.10.8 空文字
      自从:
      9
    • valueOf

      public static SourceVersion  valueOf(Runtime.Version  rv)
      返回在运行时版本参数下可用的最新源版本。如果运行时版本的 feature 大于 最新源码版本运行时版本 的特征,则抛出 IllegalArgumentException

      由于 Java 编程语言的源版本到目前为止遵循线性进展,因此仅查询运行时版本的功能组件以确定到源版本的映射。如果该线性度在未来发生变化,则运行时版本的其他组件可能会影响结果。

      API 注意:
      从字符串值(例如 "17" )转换为相应的源版本 RELEASE_17 的表达式是:
      SourceVersion.valueOf(Runtime.Version.parse("17")) 
      参数:
      rv - 映射到源版本的运行时版本
      返回:
      在运行时版本参数下可用的最新源版本
      抛出:
      IllegalArgumentException - 如果版本参数的特征大于平台版本的特征。
      自从:
      18
    • runtimeVersion

      public Runtime.Version  runtimeVersion()
      返回支持此源版本的最低运行时版本;否则 null 。返回的运行时版本有一个足够大的feature来支持这个源版本并且没有设置其他元素。大于或等于 RELEASE_6 的源版本具有非 null 结果。
      返回:
      支持此源版本的最低运行时版本;否则null
      自从:
      18