|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
уточнение параметров функции при передачи ее как параметра.
название темы сумбурно, но все же... если в какой то метод одним из параметров передается другой метод, например как в листенерах
к примеру я пишу свой , как написать что someFunc должна принимать какие то конкретные параметры, а не все что угодно... какбы задать интерфейс по параметрам для функции... и чтобы это проверялось на этапе компиляции??? или только на этапе выполнения try/catch использовать??? интерфейсы использовать не вариант... |
|
|||||
Насколько я знаю, к сожалению, мы не можем указывать в качестве типа параметра функцию с определенной сигнатурой.
Если действительно нужна такая строгость -- то, правда, только передавать какие-то команды с определенным интерфейсом.
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ" Мои ачивки: художник-паразит. |
|
|||||
Передавайте функтор с четко обозначенным интерфейсом. Что-то такое:
public class MyFunctor() { public function call(/*здесь Ваши параметры с типизацией*/) { // здесь т, что нужно сделать при вызове, как с обычной функцией } } Если вариантов исполнения может быть несколько, сделайте интерфейс IMyFunctor и передавайте конкретный функтор по интерфейсу.
__________________
...вселенская грусть |
|
|||||
Понятно... жаль что без интерфейсов никак =( всем спасибо!
|
Часовой пояс GMT +4, время: 04:27. |
|
« Предыдущая тема | Следующая тема » |
|
|