Als «extension-method» getaggte Fragen

13
Ist es unvernünftig zu erwarten, dass Any () * not * eine Nullreferenzausnahme auslöst?
Wenn Sie eine Erweiterungsmethode erstellen können Sie, natürlich, nennen es auf null.Aber, im Gegensatz zu einer Instanz Methodenaufruf, es auf null Aufruf nicht haben eine werfen NullReferenceException-> müssen Sie prüfen , und es manuell zu werfen. Für die Implementierung der Linq-Erweiterungsmethode hat Any()Microsoft entschieden, dass ein ArgumentNullException( https://github.com/dotnet/corefx/blob/master/src/System.Linq/src/System/Linq/AnyAll.cs ) ausgelöst …

3
Aus welchen Gründen würden Sie eine separate Klassenerweiterung für jeden Delegierten in Swift verwenden?
Ich habe ein Ray Wenderlich-Tutorial durchgearbeitet und festgestellt, dass der Autor Klassenerweiterungen verwendet, um Rückrufe von Stellvertretern zu speichern, anstatt sie in der Klasse selbst behandeln zu lassen, dh: Rückrufe innerhalb der Klassenerweiterung delegieren: extension LogsViewController : UIPopoverPresentationControllerDelegate { func adaptivePresentationStyleForPresentationController(controller: UIPresentationController, traitCollection: UITraitCollection) -> UIModalPresentationStyle { ... } } …

4
Was ist der Hauptfokus von Java? Warum dauert es so lange, bis neue Funktionen verfügbar sind?
Ich habe die neuen Funktionen im JDK8 untersucht, wie die Lambda-Ausdrücke, die Erweiterungsmethoden und die neue Stream-API. Offensichtlich ist keine dieser Funktionen neu in der Programmierwelt, und das hat mich gefragt, warum all diese Dinge bis jetzt in Java verfügbar sind. Wir hatten Lambda-Ausdrücke in Lisp (1958), SML (1973), Haskell …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.