Swift クラスから NSObject の description メソッドをオーバーライドする : Swift プログラミング

PROGRAM


Swift クラスから NSObject の description メソッドをオーバーライドする

NSObject クラスから派生させた Swift クラスで、NSObject クラスに実装されている -description メソッドをオーバーライドするには、次のように実装します。

override var description: String!

{

get

{

return "Name = \(self.name), Note = \(self.note)"

}

}

このように、プロパティーのゲッターを実装するようにしてオーバーライドすることで、この description に記載したコードが実行されるようになります。

これによって NSObject の description を上書きするような形になるので、たとえば NSLog 関数の "%@" に対してインスタンスを指定すれば、NSObject の仕様どおり、自動的に description が呼び出され、ここでオーバーライドした description が返す文字列で "%@" が置き換えられます。

[ もどる ]