私のコードでJava 8メソッド参照を使用しようとしています。使用可能なメソッド参照には4つのタイプがあります。Java 8:メソッド参照バインドレシーバとアンバインドレシーバの違い
- スタティックメソッドリファレンス。
- インスタンスメソッド(バウンドレシーバ)。
- インスタンスメソッド(UnBoundレシーバ)。
- コンストラクタ参照。
Static method reference
とConstructor reference
で
私は何の問題もないが、Instance Method (Bound receiver)
とInstance Method (UnBound receiver)
は本当に私を混乱。
objectRef::Instance Method
受信機UnBound
では、我々のようなメソッド呼び出しのためのクラス名を使用している:Bound
受信機では、我々のようなメソッド呼び出しのためのオブジェクト参照変数を使用している
ClassName::Instance Method.
をI、次の質問を持っています:
- インスタンスメソッドのさまざまなタイプのメソッド参照の必要性はありますか?
Bound
とUnbound
レシーバメソッドリファレンスの違いは何ですか?- ここでは
Bound
の受信機を使用する必要があります。また、受信機はどこでUnbound
を使用しますか?
私もJava 8 language features booksからBound
とUnbound
受信機の説明を見つけましたが、それでも実際の概念に混乱していました。
小さなクエリあなたは書いています:サプライヤサプライヤ= t2 ::メソッド;コメントは://サプライヤはt1にバインドされています。それはタイプミスですか、それとも正しく理解していませんか? –
@Ravindrababu:ちょうどタイプミス。今修正して... –