2017-06-21 15 views
0

In Java können Sie import static MyClass tun, und Sie werden in der Lage, die statischen Methoden der MyClass zuzugreifen, ohne dass sie mit dem Klassennamen vorangestellt ist:Statische Importe in schnellen

myMethod() statt MyClass.myMethod()

Gibt es eine Möglichkeit, dies in swift zu tun?

Antwort

2

Ich glaube nicht, dass Sie eine statische Klasse wie Java importieren können, es ist eine traditionelle statische in Swift, wo Sie es nach Klassenname + Variable/Funktion nennen.

class MyClass { 
    static let baseURL = "someURl" 

    static func myMethod() { 

    } 
} 

MyClass.baseURL oder MyClass. myMethod.

Sie können einen typealias hinzufügen, um einen Alias ​​für Ihre Static-Klasse zu erstellen.

private typealias M = MyClass 

Und dann die folgende verwenden: M.baseURL oder M.myMethod.

+0

Sie haben Recht, aber es ist * möglich, die Dinge etwas weniger ausführlich zu machen, indem Sie 'private typalias M = MyClass' hinzufügen, mit der Sie die Statik mit' M.myMethod() 'aufrufen können. IMHO, das ist fast * besser * als Java, weil es immer noch anzeigt, dass die Methode irgendwo anders definiert ist, nicht in der Quelldatei, die Sie gerade bearbeiten. – NRitH

+0

In der Tat können Sie @NRitH. Als Beispiel für OP hinzugefügt. –