Скажем, у нас естьКаков тип ссылки на метод?
class A {
B method1 (C c) { ... }
}
Что это тип method1 в качестве справочного метода?
Это, что метод подписи foo()
для этого вызова ?:
foo (A::method1);
Примечание:
Я определить интерфейс
interface I {
B m (A a, C c);
}
и, кажется, это правильно объявить foo как
void foo (I i) { }
(так как он соответствует вызову foo(A::method1)
- inside foo
вам необходимо написать b=i.m(a,c)
, что означает b=a.method1(c)
).
Это единственный способ пойти?
Это не эквивалентно анонимным внутренним классам, потому что lambdas не захватывают $ this как поле – the8472
@ the8472 А, не знал об этом. Принял удар по фиксации, надеюсь, это не так. Спасибо что подметил это! – awksp