【Swift】Swiftのクラスとインスタンス

【Swift】Swiftのクラスとインスタンス

どうもふっさんです!

今回はSwiftのクラスとインスタンスについて書いていきたいと思います。

 

Swiftのクラスとインスタンス

まずクラスとは、簡単にいうと作りたいものの設計図やテンプレートようなものを表します。

わかりにくいと思うので、とりあえず例を示します。

 

たとえば田中さん、鈴木さん、佐藤さんの三人がいるとします。

この人たちは「人間」で、それぞれの特徴があります。

田中さん→男、年齢35歳、年収500万

鈴木さん→男、年齢48歳、年収250万

佐藤さん→女、年齢28歳、年収380万、未婚

 

そしてプログラムにおいてこの三人の人物を実装したいとします。

そこで利用できるのが、この「クラス」と呼ばれるものです。

 

今自分が作りたいものは、「人間」

だから人間の「クラス」というものを作ってやります。

クラスの作り方はこんな感じ。

この「人間」というクラスは性別、年齢、年収という値を持っています。

このようにクラスが持っている値を「プロバティ」と言います。

作りたいものの特徴を表していると言えます。

 

次にそのプロパティの下にある「init」。

これは「イニシャライザ」と言って、クラスを使用する際に初期化するものです。

 

最後にそのまた下にある「func」

これは普段使っている関数と同じものです。

ただし呼び方が違っていて、クラスの中にある関数を「メソッド」と言います。書き方などは関数と全く同じです。

そしてこのメソッドいうのは、この人間クラスで言う行動などを表す部分です。

今回は「私は[性別]で、年収〇〇万の〇〇歳です」と話す関数を作りました。

 

先ほども書いたようにクラスというのは設計図やテンプレートののようなもので、この人間クラスからその人間自体を作り出します。

このようにクラスを使って作成したものを「インスタンス」と言います。

これで上で書いた田中さんが作成されました。

 

geが性別、agが年齢、moが年収の値を受け取っていて、イニシャライザによって初期化を行なっています。

では、この田中さんにメソッドを使って、しゃべってもらいましょう。

 

すると、

という風に喋ってくれます。

 

じゃあ同じように低年収の鈴木さんを作ってみましょう。

できましたね。

こちらも喋らせると同じ事を喋りますね。

ロボット感出まくってていいね!

 

さぁ最後に佐藤さん。

佐藤さんだけ特徴に「未婚」と書いてあるので、この設定をクラスに追加してあげましょう!

プロパティ、メソッド、イニシャライザ全部変えてありますからね。

 

そしてインスタンス生成。

 

最後に喋らせる。

結婚しないとそろそろ危ない佐藤さんでした!

 

とまぁ、こんな感じでクラスとインスタンスについて書いてきました。

プロパティやメソッド、イニシャライザに関してよく理解しておきましょう!

 

まとめ

クラスやインスタンスという概念は最初取っ掛かりにくいけど、理解してしまえば簡単なものです。

まぁこの記事読めば、100%理解できるね。笑

 

クラスに関して絶対に理解しておかないといけないものなので、理解できるまで頑張りましょう!

ではでは以上ふっさんでした〜。

 

Swiftカテゴリの最新記事