Swift Selfの詳細と簡単なインスタンスコード

1230 ワード

SwiftでのSelfの使用
アクセス属性、メソッドの呼び出し時に生じる曖昧さを解消するために使用されます.
関数のパラメータ名と自身の属性名が同じ名前の場合、たとえば次のようになります.

/*
  self               
*/
class AClass {
 var greeting: String
 init(greeting: String) {
  //   self       
   self.greeting = greeting
 }
}

便利なコンストラクション関数で指定したコンストラクション関数を呼び出すと、次のようになります.

 convenience init() {
   /*
       self,           ,
               ,
       self,
                ,
              init,
     self,         init
   */
   self.init()
   //      
 }

閉パッケージで自己属性にアクセスし、自己メソッドを呼び出す場合は、次のようになります.

 UIView.animateWithDuration(0.25) { () -> Void in
     /*
            ,                ,
         self
     */
     self.layoutIfNeeded()
   }

mutatingで修飾された値タイプメソッドでselfプロパティを変更する場合、たとえば:

struct Point {
 var x = 0.0, y = 0.0
 mutating func moveByX(deltaX: Double, y deltaY: Double) {
   self = Point(x: x + deltaX, y: y + deltaY)
 }
}


読書に感謝して、みんなを助けることができることを望んで、みんなの当駅に対する支持に感謝します!