KotlinでAndroidアプリ#09継承

スーパークラス

クラスの継承を確認する。スーパークラスの定義は次のようなイメージだ。

スーパークラスは明示的に「open」と記述しなければいけない。またオーバーライドを許可する関数にも「open」と記述する。

継承するクラスでは、変数定義と同じように:の次にスーパークラスを記述する。

関数のオーバーライドも明示的に「override」と記述する。

プログラム作成

プログラムを記述し確認する。クラスSuperのファイルを作成し次の内容を記述する。

クラスSubでSuperを継承し関数をオーバライドする。

実行すると下記のように想定した結果になった。

可視性修飾子

Kotlinの基本的なクラスが理解できたが、次に気になるのがアクセス修飾子だ。この部分はJavaと大差はないと考えていたが若干違うようだ。修飾子には次の種類ある。

修飾子 内容
private 宣言したファイルのみアクセス可能
protected 宣言したファイルと継承したクラスでアクセス可能
internal プロジェクトのソースファイル内でアクセス可能
public どこからでもアクセス可能

何も指定しない場合はpublicとなる。

スーパークラス内にアクセス修飾子を付け確認する。

サブクラスからアクセスを行う。

クラスに関しては、この他にインタフェース、抽象クラス、データクラス?など把握する必要がありそうだ。しかしこれらのテーマはAndroidアプリを作成しながら、必要に応じて学習していくとする。

前へ<ーーー>つづく

タイトルとURLをコピーしました