Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。

クラス

このページでは、クラスの宣言方法について説明します。

クラスの宣言

クラスは以下のフォーマットで宣言します。クラス本体には、そのクラスの状態と振る舞いを定義します。状態はメンバ変数、振る舞いはメソッドで定義します。

class クラス名 { クラス本体 }

【例1】クラスの宣言例です。

class Example {
  int exValue = 100;  //値100の状態を持つメンバ変数

  void exShow() {  //exValueを表示するメソッド
    System.out.println(this.exValue);
  }
}

文法上誤りではありませんが、慣例上以下のルールで、クラス名、メンバ変数名、メソッド名を記載します。

種別 慣例
クラス 単語の先頭と区切り文字を大文字で記載。名詞で記載。 Example、ExClass、JavaProg
メンバ変数 担当の先頭を小文字、区切り文字を大文字で記載。名詞で記載。 exValue、exPoint
メソッド 担当の先頭を小文字、区切り文字を大文字で記載。動詞で記載。 exShow、exPrint

メンバ変数、メソッドは文法上はどの順番で記載しても間違いではありませんが、プログラムの読みやすさから、通常はメンバ変数、メソッドの順に記載します。

クラス宣言時に付与できる修飾子

Javaではクラス宣言時、修飾子を付けることによりクラスに様々な役割を持たせることができます。詳細な説明はここでは省略します。

クラス宣言時に付与できる修飾子

※ 修飾子は上から宣言する順に並んでいます。
修飾子 説明
public 他のどのクラスからも宣言されたクラスを使用できることを表します。publicがない場合は同じパッケージ中のクラスからしか使用できません。
abstract abstractは宣言されたクラスからインスタンスを生成できないことを表します。詳細はabstractを参照してください。
final finalは宣言されたクラスのサブクラスを作れないことを表します。詳細はfinalを参照してください。
class クラス名 クラス宣言における必須要素です。クラスの宣言とそのクラス名を表します。
extends スーパークラス名 スーパークラスのサブクラスとしてクラスを宣言することを表します。詳細はクラスの継承を参照してください。
implements インターフェース名 宣言されたインターフェースをクラスが実装することを表します。詳細はインタフェースの実装を参照してください。

【例2】修飾子を付与したクラスの宣言例です。

//public修飾子を付与しているため、すべてのクラスからこのクラスを使用できます。
//final修飾子を付与しているため、このクラスのサブクラスを作ることはできません。
public final class ExClass1 {
  ・・・・・・・・・・
}

2クラス