2012-02-10 10 views
2

Java言語仕様を読んでいるうちに、私は理解できない表記を見つけました。例えば、この1つJava言語仕様から特定の表記法を読む方法

Cは、0以上の型パラメータ(§4.4)F1、...、Fnを持つ型宣言(§4.12.6、§8.1、§9.1)であり、対応する境界B1 ,. ..、Bn。その型宣言は、パラメータ化された型(§4.5)C2の集合を定義します。各引数型Tiは、対応する境界にリストされたすべての型のサブタイプであるすべての型に渡ります。すなわち、Biの各結合型Siについて、TiはSi [F1:= T1、...、Fn:= Tn]のサブタイプである。

Si [F1:= T1、...、Fn:= Tn]とは何ですか?それを読むには?誰か知っていますか?おかげで...

+2

あなたの教授があなたにこの質問をしたときに何を教えてくれましたか? –

+0

あなたはその段落のすべての定義を与えました。 Tが意味することを振り返って、F. – Randy

答えて

1

同じ仕様では、ここ2

+0

私はそれを見つけることができません – zim32

0

は、現在のJava仕様である章の表記法を説明します

http://download.oracle.com/otn-pub/jcp/jls-7-mr3-fullv-oth-JSpec/JLS-JavaSE7-Full.pdf

私はあなたが上記の引用された参照を見つけることができませんでした。

あなたが引用した段落が何を話しているかについて詳しく知ることなく、われわれは表記の説明に迷っています。

私の最高の推測では、このです:

  • すべてのJavaの「法」という機能

  • すべての引数は、「タイプ」を持っている(例えば、「T1」)に引数をリスト「署名」を持っていますこれは正当な値の「有界範囲」です(例:「B1..BN」)。

第4章「タイプ、値、変数」を参照することをお勧めします。

+0

ここhttp://java.sun.com/docs/books/jls/third_edition/html/typesValues.html#4.10.2 – zim32

+0

私は、このテキストは正確にSi [F1:= T1、...、Fn:= Tn]を求めています。私は人間の言語でこの文字列を読む方法を理解することはできません – zim32

+0

リファレンスのためのThanx:それは役に立ちます:) – paulsm4

1

threadを参照してください。 B1、T2 <:次の場合にのみ T1 <もしCが十分に形成されるタイプCジェネリック型宣言を考えると、そう

:あなたが求めている正確に何を説明し、特にこの文B2 ... Tnに<:Bn。

うまくいけば、より理解を深めることができます。

基本的に表記法自体は、各パラメータタイプFiが実際にサブタイプTiに割り当てられていることを示しています。

+0

私の推測では、[x、x、x]はある範囲です。しかし、F1:= T1とは何ですか?どんな関係? – zim32

+0

割り当てを示します。このような特殊文字は、等価チェックと区別するために使用されます。こちらをご覧くださいhttp://en.wikipedia.org/wiki/Assignment_(computer_science) –

+0

私は見つけたと思います。 "このセクション全体を通して、A1、...、AnをCの正式型パラメータとし、BiをAiの宣言された境界とする。表記[Ai:= Ti]は、型変数Aiの型Tiは1インチであり、本明細書を通じて使用される。 – zim32

関連する問題