Android Studioを使い、Kotlin言語の特徴を解説する本連載「Android Studioで始めるKotlin入門」。連載第5回目の今回は、前回に続き、「継承」など、「クラス」周りの機能を扱っていきます。また、継承に関連して「スマートキャスト」機能についても解説します。 クラスの継承 Kotlinのクラス継承は基本的にJavaの考え方を踏襲していますが、幾つか異なる点も存在します。 基底はObjectクラスではなくAnyクラス Kotlinのクラスは全て「Any」というクラスを継承しています。Kotlinのクラスは全て非Null型のため、Null許容型であるJavaのObjectのサブクラスとなることはできません。そのため、非Null型として定義されたAnyクラスがKotlinにおける全てのクラスのスーパークラスとなっています。AnyのさらにスーパークラスとしてNull許容型
![Kotlinにおける継承、オーバーライド、抽象クラス、インタフェースとスマートキャスト](https://cdn-ak-scissors.b.st-hatena.com/image/square/6e84fc6ab06f31b2e64248cbfc92fe06deb5bab5/height=288;version=1;width=512/https%3A%2F%2Fimage.itmedia.co.jp%2Fimages%2Flogo%2F1200x630_500x500_ait.gif)