Javaでは、クラスを継承して新しいクラスを作れます。その際、継承元の親に当たるクラスのことを「スーパークラス」と呼びます。また、継承先の子に当たるクラスのことを「サブクラス」と呼びます。
┏━━━━━┓ ┏━━━━━━━┓ ┃継承元(親)┃ ┃スーパークラス┃ ┗━━┯━━┛ ┗━━━┯━━━┛ ↓ ↓ ┏━━━━━┓ ┏━━━━━┓ ┃継承先(子)┃ ┃サブクラス┃ ┗━━━━━┛ ┗━━━━━┛
サブクラスは「extends」を使って作ります。クラス名の後にextendsと書き、その後に継承したいクラスの名前を書けば継承を行えます。
以下、実際にサブクラスを作った場合の例です。
package sample; public class SuperClass { public int nSuper = 0; }
package sample;
public class SubClass extends SuperClass {
public int nSub = 1;
}
SuperClass superClass = new SuperClass(); System.out.println(superClass.nSuper); // 「0」と出力 SubClass subClass = new SubClass(); System.out.println(subClass.nSuper); // 「0」と出力 System.out.println(subClass.nSub); // 「1」と出力
サブクラスでは、スーパークラスのフィールドやメソッドを利用できます。
前項で作ったスーパークラスとサブクラスの関係は、以下の図のようになります。
┏SuperClass━━━┓ ┃ ┃ ┃ ┃public ┃ ┠─○nSuper ┗━━━━━━━━┛
┏SubClass━━━━┓ ┃┏SuperClass━┓┃ ┃┃ ┃┃public ┃┃ ┠──○nSuper ┃┗━━━━━━┛┃ ┃ ┃public ┃ ┠─○nSuper ┗━━━━━━━━┛