昨日は型パラメータを2つとる Pair というクラスを作った。…
2019年5月16日
1 分
Scala では、クラスを定義するときには決められないような型を持つことができる。この型は仮の名前をつけておき、実際にクラスのインスタンスを作るときに決まるようにする。これを型パラメータと呼ぶ。型パラメータはたとえば、中にどんな型が入るかわからないコンテナのようなクラスを作るのに役立つ。…
2019年5月15日
1 分
昨日と同じように、菱形継承問題を考える。…
2019年5月14日
1 分
Scala のクラスは単一継承だけど、トレイトは複数継承できるので菱形継承問題が起きる。菱形継承問題というのは次のようなものだ。…
2019年5月13日
1 分
聴きなれない単語が出てきた。トレイトというのは、Scala のオブジェクト指向プログラミングにおけるモジュール化の中心的な概念らしい。トレイトの特徴は次の3つだ。…
2019年5月12日
1 分
同じファイル内において、クラスと同じ名前で定義されたシングルトンオブジェクトをコンパニオンオブジェクトと呼ぶ。コンパニオンオブジェクトは対応するクラスに対して特権的なアクセス権を持っていて、private なフィールドに対してもアクセスできる。…
2019年5月11日
1 分
Scala では、クラスのほかに、 object キーワードを使うことでシングルトンオブジェクトを作ることができる。シングルトンオブジェクトは、クラスとは違ってインスタンス化せずにそのまま使えるオブジェクトだ。…
2019年5月11日
1 分
クラスの定義時点では実装を持たず、サブクラスで実装されるようなメソッドやフィールドを抽象メンバーと呼ぶ。また、抽象メンバーを1つ以上持つクラスを抽象クラスと呼ぶ。…
2019年5月10日
1 分
単一継承…
2019年5月9日
1 分
Scala では複数の引数リストを持つメソッドを定義できる。読んで字の如く、引数リストが複数あるってことだ。…
2019年5月9日
1 分