Disons que nous avonsQuel est le type d'une référence de méthode?
class A {
B method1 (C c) { ... }
}
Quel est le type de method1 comme référence de méthode?
C'est, quelle est la signature de la méthode de foo()
pour cet appel ?:
foo (A::method1);
Note:
J'ai défini une interface
interface I {
B m (A a, C c);
}
et il semble qu'il est juste déclarer foo comme
void foo (I i) { }
(puisqu'il correspond à l'appel foo(A::method1)
- à l'intérieur foo
vous devez écrire b=i.m(a,c)
pour signifier b=a.method1(c)
).
Est-ce la seule façon de procéder?
ce n'est pas l'équivalent des classes internes anonymes car les lambdas ne capturent pas $ ceci comme un champ – the8472
@ the8472 Ah, je ne savais pas à ce sujet. A pris un coup à un fixant, j'espère que ce n'est pas faux. Merci d'avoir fait remarquer cela! – awksp