質問

はありまBNFはEBNFを記述する文法のためのJavaの注釈?

役に立ちましたか?

解決

Java関連の文法の信頼できるソースであり、もちろん、JLS。

Javaのプログラミング言語の

JLS 18.1ザ・文法

Annotations:
        Annotation [Annotations]

Annotation:
        @ TypeName [( [Identifier =] ElementValue)]

ElementValue:
        ConditionalExpression
        Annotation
        ElementValueArrayInitializer

... rest ommitted

他のヒント

`/ *注釈構文は次のとおり。 * /

注釈:: = NormalAnnotation   | SingleMemberAnnotation   | MarkerAnnotation NormalAnnotation :: = "@" 名前 "("(MemberValuePairs)? ")" MarkerAnnotation :: = "@" の名前 SingleMemberAnnotation :: = "@" 名前 "(" MemberValue ")" MemberValuePairs :: = MemberValuePair( "" MemberValuePair)* MemberValuePair :: = "=" MemberValue MemberValue :: =注釈   | MemberValueArrayInitializer   | ConditionalExpression MemberValueArrayInitializer :: = "{"(MemberValue( "" MemberValue)*( "")?)? "}"

/ *注釈の種類。 * /

AnnotationTypeDeclaration :: = "@" "インターフェース" AnnotationTypeBody AnnotationTypeBody :: = "{"(AnnotationTypeMemberDeclaration)* "}" AnnotationTypeMemberDeclaration :: =修飾子(タイプ "(" ")"(のDefaultValue)? ";" | ClassOrInterfaceDeclaration | EnumDeclaration | AnnotationTypeDeclaration | FieldDeclaration)   | ( ";") DefaultValue :: = "デフォルト" MemberValue` ここのから。また、彼のブログを参照してくださいポストするます。

Java言語の文法

  1. 他のタイプが先頭から連続して任意の行[注釈]:

    Type: [Annotations] Identifier [TypeArguments] {. Identifier [TypeArguments]} {[]} [Annotations] BasicType

  2. 許可の注釈レベルの配列の宣言は、コンストラクタを削減や難読化を行える"{[]}"と"{[注釈][]}".(これを抽象化しましたとして、"BracketsOpt"第2版では"環太平洋[GJSB00].) 例えば:

Type: [Annotations] Identifier [TypeArguments]{ . Identifier [TypeArguments]} {[Annotations] []} [Annotations] BasicType

Also permit annotations on varargs (...): FormalParameterDeclsRest: VariableDeclaratorId [, FormalParameterDecls] [Annotations] ... VariableDeclaratorId

  1. 注釈が表示され、受信機の種類を変える利用"FormalParameters"(全5箇所が、文法)"FormalParameters[注釈]".例えば:

    VoidMethodDeclaratorRest: FormalParameters [Annotations] [throws QualifiedIdentifierList] ( MethodBody | ; )

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top