facebook twitter hatena line email

「Ios/swift/クラス」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
行26: 行26:
 
  }
 
  }
 
  Utility.bai(10); // 20
 
  Utility.bai(10); // 20
 +
 +
==継承==
 +
class Animal {
 +
    var name: String
 +
    var foot: Int
 +
    init(name: String, foot: Int) {
 +
        self.name = name
 +
        self.foot = foot
 +
    }
 +
    func getName() -> String {
 +
        return self.name;
 +
    }
 +
    func getFoot() -> Int {
 +
        return self.foot;
 +
    }
 +
}
 +
class Cat: Animal
 +
{
 +
    init() {
 +
        super.init(name: "cat", foot: 4)
 +
    }
 +
}
 +
var cat = Cat()
 +
cat.getName() // cat
 +
cat.getFoot() // 4

2016年6月20日 (月) 02:18時点における版

クラスのプロパティとメソッド

class User {
   var name: String
   let age: Int
   init(name: String, age: Int) {
       self.name = name
       self.age = age
   }
   func getName() -> String {
       return self.name;
   }
   func setName(name:String) {
       self.name = name;
   }
}
var user = User(name: "taro", age: 10)
user.getName() // taro
user.setName("suzuki");
user.getName() // suzuki

Staticを使う

class Utility {
   static func bai(a:Int) -> Int {
       return a * 2;
   }
}
Utility.bai(10); // 20

継承

class Animal {
   var name: String
   var foot: Int
   init(name: String, foot: Int) {
       self.name = name
       self.foot = foot
   }
   func getName() -> String {
       return self.name;
   }
   func getFoot() -> Int {
       return self.foot;
   }
}
class Cat: Animal
{
   init() {
       super.init(name: "cat", foot: 4)
   }
}
var cat = Cat()
cat.getName() // cat
cat.getFoot() // 4