Swiftで基本的なオブジェクト指向のクラス定義を勉強してみた!【Class・Object】

Swiftを勉強中なので、プログラミングの例によく使われる動物クラス(Class Animal)から、人間クラス(Class Human)まで継承していくオブジェクト指向を簡単に書いてみました!

スーパークラス(親クラス) Animal

まずは1番親になるスーパークラスのAnimalクラス。

すべての動物に共通するメソッド(breathe())を持っています。

Animalクラスをインスタンス化

Animalクラスをインスタンス化して、breatheメソッドを使うとBreathe!とログに表示されます。

Animalを継承した子クラス Mammal

次にAnimalクラスを継承したMammalクラスを作ります。

MammalクラスはAnimalクラスが持つメソッドを継承し、更にwalk()というメソッドを保有しています。

Mammalクラスをインスタンス化

Mammalクラスをインスタンス化すると、AnimalクラスとMammalクラスのメソッドが使えるため、

  • breatheメソッド
  • walkメソッド

の2つが使えるようになります。

Animalを継承したHumanクラス

最後に、Mammalクラスを継承したHumanクラス。

話せるようになりました。

Humanクラスは、Animalクラスを継承したMammalクラスを継承しているため、

  • Animalクラス
  • Mammalクラス
  • Humanクラス

すべてのメソッドを使用することができます。

Humanクラスをインスタンス化

このように、すべてのメソッドが使えます。

基本だけど大事

ここまで簡単なオブジェクト指向を実践で使うことはないですが、基本概念がわかっていないと実際にプロダクトを作っている最中に理解が出来ません。

オブジェクト指向の本や情報はたくさんありますので、興味がありましたら、色々調べてみてください!

ABOUTこの記事をかいた人

新卒ノマドエンジニアとして独立し、半年で月収100万円を達成する。フリーランスのエンジニアとして活動しながら、事務所を売却(バイアウト)したり、Youtuber(最高月間視聴回数109万回、チャンネル登録者1万人)をしたり、Openrecの公式配信者としてゲーム生実況をしたり、ベンチャー企業のCOOをしたり、パラレルキャリアを歩んでいる。 2019年にミニマムライフコストを不労所得で稼げるようになったため、いまは好きなことだけ仕事にしています。