Help us understand the problem. What is going on with this article?

[Swift] クラスのイニシャライザ1: イニシャライザの引数の書き方

More than 5 years have passed since last update.

はじめに

この記事では、イニシャライザの引数の書き方について説明します。

他の記事へのリンク

環境

  • Xcode 6.1 (Playground)

イニシャライザの引数の書き方

イニシャライザの引数の書き方は、以下の4通りあります。

1. 引数が無い場合

  • 宣言方法
init() {
    ...
}
  • 呼び出し方法
var a = Animal()

2. 外部引数名と内部引数名を指定する場合

  • 宣言方法
init(外部引数名 内部引数名: ) {
    self.property = 内部引数名
    ...
}
init(outside inside: String) {
    self.property = inside
    ...
}
  • 呼び出し方法
var a = Animal(外部引数名: "abc")
var a = Animal(outside: "abc")

3. 外部引数名と内部引数名が同一である場合

  • 宣言方法
init(外部引数名でかつ内部引数名: ) {
    self.property = 外部引数名でかつ内部引数名
    ...
}
init(name: String) {
    self.property = name
    ...
}
  • 呼び出し方法
var a = Animal(外部引数名でかつ内部引数名: "abc")
var a = Animal(name: "abc")

4. 外部引数名を省略する場合

  • 宣言方法
init(_ 内部引数名: ) {
    self.property = 内部引数名
    ...
}
init(_ inside: String) {
    self.property = inside
    ...
}
  • 呼び出し方法
var a = Animal("abc")

参考文献

The Swift Programming Language

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away