カテゴリ: Swift 更新日: 2025/10/24

Swiftのメソッド定義とインスタンス化の流れをやさしく解説!初心者向けオブジェクト指向入門

Swift メソッドの定義とインスタンス化の流れ
Swift メソッドの定義とインスタンス化の流れ

先生と生徒の会話形式で理解しよう

生徒

「Swiftでクラスの中に関数みたいなものを書いてるのを見たんですけど、あれって何ですか?」

先生

「それは“メソッド”と呼ばれるもので、クラスや構造体の中で使う関数のことだよ。Swiftではメソッドを定義して、インスタンスを作ってから使います。」

生徒

「インスタンスっていうのもよくわからなくて…」

先生

「大丈夫!順を追って丁寧に説明していくから、メソッドの定義とインスタンス化の流れを一緒に学んでいこう!」

1. Swiftのメソッドとは?

1. Swiftのメソッドとは?
1. Swiftのメソッドとは?

Swift(スウィフト)におけるメソッドとは、クラスや構造体の中で定義された関数のことです。

たとえば、「車を走らせる」「あいさつをする」といった具体的な動きを表すのがメソッドです。

クラスや構造体の中でfuncを使って定義します。

2. メソッドの定義方法と使い方

2. メソッドの定義方法と使い方
2. メソッドの定義方法と使い方

以下の例では、人を表すPersonクラスを作り、greetというメソッドを定義しています。


class Person {
    var name: String

    init(name: String) {
        self.name = name
    }

    func greet() {
        print("こんにちは、私は\(name)です。")
    }
}

let user = Person(name: "太郎")
user.greet()

こんにちは、私は太郎です。

このように、greetメソッドを定義し、インスタンス(実体)を作ってからuser.greet()のように呼び出します。

3. インスタンス化とは?

3. インスタンス化とは?
3. インスタンス化とは?

インスタンス化とは、クラスや構造体をもとにして、実際のデータ(実体)を作ることです。

たとえば、Personという設計図(クラス)を使って、userという一人の人を作ることがインスタンス化です。

let user = Person(name: "太郎")というコードで、クラスからオブジェクト(インスタンス)を生成しています。

4. 引数つきのメソッドを作ってみよう

4. 引数つきのメソッドを作ってみよう
4. 引数つきのメソッドを作ってみよう

メソッドは、呼び出すときに値(引数)を渡すこともできます。たとえば、何回あいさつするかを引数で指定する例です。


class Greeter {
    var name: String

    init(name: String) {
        self.name = name
    }

    func greet(times: Int) {
        for _ in 1...times {
            print("こんにちは、\(name)です。")
        }
    }
}

let greeter = Greeter(name: "さくら")
greeter.greet(times: 3)

こんにちは、さくらです。
こんにちは、さくらです。
こんにちは、さくらです。

このように、greet(times:)のように引数を使うことで、柔軟に処理を変えられます。

5. 戻り値のあるメソッド

5. 戻り値のあるメソッド
5. 戻り値のあるメソッド

メソッドは、計算結果などを戻すこともできます。これを戻り値(return value)といいます。

次の例では、年齢から生まれた年を計算して返すメソッドを定義しています。


struct Profile {
    var name: String
    var age: Int

    func birthYear(currentYear: Int) -> Int {
        return currentYear - age
    }
}

let p = Profile(name: "健一", age: 30)
let year = p.birthYear(currentYear: 2025)
print("生まれ年は\(year)年です")

生まれ年は1995年です

このように、-> Intと書くことで、整数を戻すメソッドになります。

6. メソッドの使い分けと設計の考え方

6. メソッドの使い分けと設計の考え方
6. メソッドの使い分けと設計の考え方

メソッドを使うと、処理をひとまとまりにできて、読みやすく・使いやすいコードが書けます。

次のような場面で使うと便利です:

  • あいさつ・計算・状態の確認など、特定の動作を何回も使いたいとき
  • データを扱うだけでなく、「何かをする」処理をまとめたいとき
  • クラスの外から処理を呼び出したいとき

Swiftでは、関数と違ってメソッドはインスタンスにひもづいている点がポイントです。

7. インスタンス化→メソッド呼び出しの流れを整理しよう

7. インスタンス化→メソッド呼び出しの流れを整理しよう
7. インスタンス化→メソッド呼び出しの流れを整理しよう

ここまでの内容を振り返ると、Swiftでの基本的な流れはこうなります:

  1. classstructを使って設計図(型)を作る
  2. initで初期化してインスタンス(実体)を作る
  3. 作ったインスタンスに対してメソッドを呼び出す

この考え方をしっかり理解することで、オブジェクト指向の基本が自然と身につきます。

カテゴリの一覧へ
新着記事
Go言語の関数でエラーハンドリングする基本的な方法
Go言語のスライス・マップ・配列をまとめて比較してみよう!初心者でもわかる使い分けの基本
Go言語の条件分岐の見やすい書き方を徹底解説!初心者でもわかるif文の使い方
Go言語とは何か?初心者向けに特徴・できること・インストール手順までやさしく解説
人気記事
No.1
Java&Spring記事人気No1
Swift Playgroundの使い方を完全解説!初心者に最適な学習環境の始め方
No.2
Java&Spring記事人気No2
Go言語で条件式を1行で書くコツ!三項演算子の代替と短縮記法
No.3
Java&Spring記事人気No3
Swift開発環境の構築方法を徹底解説!Xcode・Windows・Linux対応
No.4
Java&Spring記事人気No4
Kotlinのデータクラス(data class)とは?便利な特徴と使い方を初心者向けにやさしく解説!