Запитання з тегом «extension-method»

13
Чи нерозумно очікувати, що будь-який () * не * викине нульовий посилання на виняток?
При створенні методу розширення ви можете, звичайно, назвати його по null.Але, в відміну від методу примірника виклику, виклик його на нуль НЕ має , щоб кинути NullReferenceException-> ви повинні перевірити і кинути його вручну. Для реалізації методу розширення Linq Any()Microsoft вирішила, що вони повинні кинути ArgumentNullException( https://github.com/dotnet/corefx/blob/master/src/System.Linq/src/System/Linq/AnyAll.cs ). Мене це …

3
З яких причин ви б використовували окреме розширення класу для кожного делегата в Swift?
Я працював підручником Рея Вендерліха і зауважив, що автор використовує розширення класу, щоб утримувати зворотні делегатські виклики, а не обробляти їх у самому класі, тобто: делегувати зворотні виклики всередині розширення класу: extension LogsViewController : UIPopoverPresentationControllerDelegate { func adaptivePresentationStyleForPresentationController(controller: UIPresentationController, traitCollection: UITraitCollection) -> UIModalPresentationStyle { ... } } на відміну від …

4
Яка основна увага в Java? Чому для отримання нових функцій потрібно так багато часу?
Я досліджував нові функції в JDK8, як-то лямбда-вирази, методи розширення та API нового потоку. Очевидно, що жодна з цих функцій не є новою у світі програмування, і це здивувало питання, чому до цього часу я отримую все це на Java. У нас були лямбда-вирази в Lisp (1958), SML (1973), Haskell …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.