読者です 読者をやめる 読者になる 読者になる

NSDateを例にSwiftの初期化を理解してみる

Objective-Cならこう書くよね。

// クラスメソッド
NSDate *date1 = [NSDate date];
// インスタンスメソッド
NSDate *date2 = [[NSDate alloc] init]; // objcではこれはあんまり使わないけど

じゃあSwiftは?

var date1 = NSDate.date()
var date2 = NSDate() // swiftだとこっちの方がそれっぽい

swiftだと、インスタンスメソッドの方使いたくなるな。 initというのは、呼び出し側にはもう出てこないのか。 javaコンストラクタみたいな位置づけになるんだね。