サブクラスのコンストラクタ

基本的なことですが忘れていたこともあったのでサブクラスのコンストラクタについて書きます。
サブクラスにてコンストラクタを呼ぶときに何も明示しなければ暗黙的にスーパークラスの引数なしのコンストラクタが呼ばれます。
しかし、スーパークラスに引数なしのコンストラクタがない場合、コンパイルエラーとなるので注意が必要です。

class A {
   A() {  
      ...
   }
}

class B {
   B(String a) {
      ...
   }
}

class C extends A {
   B() {
      // super(); が表記しなくても呼ばれる  
   }
}

class D extends B {
   D() {
      // クラス B には引数なしのコンストラクタがないためコンパイルエラーになってしまう
      // super("test"); のようにするか、クラス B に引数なしのコンストラクタを記述することで解決
   }
}

また、スーパークラスの変更したい値などはfinalやprivateなどが付いていると変更できません。

AWSを利用した導入事例のご紹介

実際に構築を行ったAWSの事例を紹介しています。導入の目的に近い事例をご覧いただくと、実際の構成例やメリット、注意点などが把握できます。

ブックオフコーポレーション株式会社様
第一生命保険株式会社様
株式会社電通様
株式会社LIFULL様
株式会社リブセンス様
TBSアナウンス部様
明治大学様
拓殖大学様