みなさんこんにちは!!
新人のMKです。
今日も早速、振り返っていこうと思います。
継承(抽象クラス、インターフェース)
前回から引き続き継承について学んでまいりました。
その中でも今日は継承の重要な要素となる、抽象クラスとインターフェースについてやりました。
抽象クラスとか抽象メソッドだとか、「abstract」なんていう新しいキーワードも出てきて、最初は戸惑いましたが、いざ学習してみると、より開発をスムーズに進めるためのツールであり、ルールさえ覚えれば、非常に拡張性があり便利なものです。
次は多態性(アップキャスト、ダウンキャスト、insatnceof)です。
今までの講義の中で、「あるものをあえてザックリ扱う」と度々言われてきたのですが、ようやくその全貌を知ることができました。
instanceofでしっかり中身を確認することで安全にエラーを起こさずキャストを行うことができます。
ザックリ扱うことでメリットなんてあるのか?と思っていた節もありましたが、しっかりメリットがありました。
あとはここではイメージが非常に大切です。
「is-a」○○は○○であるという関係をしっかり把握してないと便利な機能で逆にミスを犯しかねないという部分に気を付ける必要があります。
疑問点・課題点
抽象クラス、インターフェースは一応似たような動きと機能を持つものなどで、それぞれ定義ができるものや、多重継承の有無や、継承の際に使うキーワード「extends」,「implements」が混同しないように区別して使うことが必要だと思います。
そういえば、最近同期のメンバー4人で初めて飲みに行きました。
普段研修中は聞けないような話などもたくさん出てきて、かなり盛り上がりました。4人でともに成長していけるよに頑張りますので、温かく見守ってくださいね。