1

悪いタイトルで申し訳ありません。この質問を他に何と呼ぶべきかわかりませんでした。とにかく、次のものがあるとします。

@synthesize display = _display

私の質問は、display と _display の違いは何ですか? それぞれ何を指していますか?

明確にするために、 @synthesize が何をするかは知っていますが (getter と setter を作成します)、display と _display が参照する違いが正確にはわかりません。

私はJavaに堪能なので、可能な限りあなたの答えをJavaに関連付けてください。

ありがとう

4

3 に答える 3

5

displayプロパティの名前です。また、ゲッターとセッターの名前にも影響します。

_displayプロパティがアクセスするオブジェクトの基になるフィールドです。プロパティと同じままにしておきたい人もいます。この動作はデフォルトで発生するため、簡単です。フィールドの前にアンダースコアを付けるのが好きな人もいます。(一部のクレイジーな人々も完全に異なる名前を使用するのが好きですが、彼らはクレイジーです。)

于 2012-01-28T04:13:41.663 に答える
3

宣言されたプロパティから-プロパティ実装ディレクティブ

このフォームproperty=ivarを使用して、特定のインスタンス変数をプロパティに使用する必要があることを示すことができます。次に例を示します。

@synthesize firstName, lastName, age=yearsOld;

firstNameこれは、、、lastNameおよびのアクセサメソッドをage合成する必要があり、プロパティageがインスタンス変数で表されることを指定しますyearsOld

于 2012-01-28T04:10:21.593 に答える
0

これは、displaygetterとsetterが_displayメンバー変数へのアクセスを提供することを意味します。

これを使用して、プロパティの名前を外部から変更できます。

于 2012-01-28T04:13:18.697 に答える