内容
Objective-Cでインスタンスを生成するobjectWithXXXのようなクラスメソッドはSwiftだとClass(XXX:XXX)となる。
これは自作クラスでも適用される模様。
NSDateの例
NSDateのdateWithTimeIntervalSince1970:の場合、それぞれ以下のようなコードになる。
Objective-C
NSDate * date = [NSDate dateWithTimeIntervalSince1970:0];
Swift
let date:NSDate = NSDate(timeIntervalSince1970:0)
自作クラスの例
Objective-Cで自作したクラスのクラスメソッドでも同様の対応は行われる。
TestClassで+(TestClass*)testClassWithData:(TestData*)dataを用意すると以下のようになる。
Objective-C
TestClass * test = [TestClass testClassWithData:data];
Swift
let test:TestClass = TestClass(data:data)