Javaプログラミングのクラス

Javaプログラミングのクラス
目次

クラス(Class)

ロボ君

クラスは、オブジェクトの設計図デス。

クラスのメリットとしては、以下のようなものが挙げられます。

  • 同じ処理を繰り返す必要がなくなる
  • 新しい機能や処理を追加する際に、既存のコードに変更を加える必要がない
  • プログラムの構造が明確になり、動作を理解しやすくなる
  • バグの発見や修正が容易になる
  1. 再利用性

クラスは、役割や機能ごとにまとめることで、コードの再利用を可能にします。
同じ処理を繰り返す必要がなくなり、プログラムの保守や開発が容易になります。

  1. 拡張性

クラスは、サブクラスを継承することで、機能や処理を拡張することができます。
新しい機能や処理を追加する際に、既存のコードに変更を加える必要がありません。

  1. 保守性

クラスは、フィールドやメソッドを抽象化することで、プログラムの構造を明確にすることができます。
そのため、プログラムの動作を理解しやすくなり、バグの発見や修正が容易になります。

クラスはJavaプログラムの基本的な構成要素で、オブジェクト指向プログラミング(OOP)の中心です。
クラスはオブジェクトの設計図であり、特定の属性(フィールド)と操作(メソッド)を定義します。
↓Pythonの記事ですが、考え方は同じです。

クラスの宣言

クラスを宣言するには、以下の構文を使用します。

class クラス名 {
  // フィールド
  // メソッド
}
  • クラス名 は、クラスの名前を指定します。
  • フィールド は、クラスのインスタンス変数を定義します。
  • メソッド は、クラスのインスタンスメソッドを定義します。

クラスの基本構造

[修飾子] class [クラス名] {
    // フィールド(属性)の宣言
    [アクセス修飾子] [データ型] [フィールド名];

    // コンストラクタ(クラスのインスタンス化時に実行される特別なメソッド)
    [修飾子] [クラス名]([パラメータリスト]) {
        // コンストラクタの本体(初期化コード)
    }

    // メソッド(操作)の宣言
    [修飾子] [戻り値の型] [メソッド名]([パラメータリスト]) {
        // メソッドの本体(コード)
        [戻り値の返却];
    }
}
  • 修飾子 (Modifiers)
    クラスのアクセス範囲を指定します。
    例えば、public, private, protected などがあります。
  • クラス名 (Class Name)
    クラスの名前を指定します。
    識別子として有効でなければなりません。
  • フィールド (Fields)
    クラス内の属性を表します。
    オブジェクトの状態を保持します。
  • コンストラクタ (Constructor)
    クラスのインスタンス化時に実行される特別なメソッドで、オブジェクトの初期化を行います。
  • メソッド (Methods)
    クラス内の操作を表します。オブジェクトの振る舞いを定義します。

クラスの例

例1:

public class Calculator {
    // メソッドの定義
    public int add(int a, int b) {
        return a + b;
    }

    public static void main(String[] args) {
        // メソッドの呼び出し
        Calculator calculator = new Calculator();
        int result = calculator.add(5, 3);
        System.out.println("5 + 3 = " + result);
    }
}

// 実行結果
// 5 + 3 = 8
  1. public class Calculator { }
    Calculatorという名前のクラスを宣言しています。
    クラスはJavaプログラムの基本的な構造であり、このクラス内にメソッドやフィールド(変数)を含めることができます。
  2. public int add(int a, int b) { }
    addという名前のメソッドを定義しています。
    メソッドは特定のタスクや操作を実行するためのコードの塊です。
    このメソッドは、整数型のabという2つの引数を受け取り、それらの値を足し合わせて整数型の結果を返します。
  3. public static void main(String[] args) { }
    Javaプログラムのエントリーポイントであるmainメソッドを定義しています。
    mainメソッドはプログラムの開始地点であり、ここからプログラムが実行されます。
  4. Calculator calculator = new Calculator();
    この行では、Calculatorクラスのインスタンスを作成しています。
    クラスのインスタンス化は、クラスのメソッドやフィールドにアクセスするための手段です。
  5. int result = calculator.add(5, 3);
    Calculatorクラスのインスタンスであるcalculatoraddメソッドを呼び出しています。
    引数として5と3を渡し、その結果をresult変数に格納しています。
  6. System.out.println("5 + 3 = " + result);
    計算結果を表示しています。
    System.out.printlnはコンソールにテキストを出力するためのJavaの標準メソッドです。

Calculator,javaファイル上で動作します。

例2:

public class Student {
    // フィールドの宣言
    private String name;
    private int age;

    // コンストラクタ
    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // メソッド
    public void displayInfo() {
        System.out.println("名前: " + name);
        System.out.println("年齢: " + age);
    }

    public static void main(String[] args) {
        // クラスのインスタンス化
        Student student1 = new Student("Real", 54);
        Student student2 = new Student("Astr", 25);
        Student student3 = new Student("Yoru", 27);

        // メソッドの呼び出し
        student1.displayInfo();
        student2.displayInfo();
        student3.displayInfo();
    }
}

↓実行結果

名前: Real
年齢: 54
名前: Astr
年齢: 25
名前: Yoru
年齢: 27

この例では、Student クラスが定義されており、名前と年齢の属性を持っています。
コンストラクタでオブジェクトを初期化し、displayInfo メソッドで情報を表示しています。
main メソッド内でクラスのインスタンスを作成し、メソッドを呼び出しています。
Student.javaファイル上で動作します。

りある

同じクラス(設計図)を使って3人の生徒(インスタンス)を生み出した!

クラスまとめ表

要素説明
クラスオブジェクトの設計図
フィールドクラス内の変数。オブジェクトの状態を表すデータを保持します。
コンストラクタオブジェクトの初期化時に呼び出される特別なメソッド。
メソッドクラス内の関数。オブジェクトの振る舞いを定義します。

教科書

Pythonの教科書は「やさしいPython」です。

Javaの教科書は「スッキリわかるJava入門 実践編 第3版」です。

著:中山清喬, 著:国本大悟, 監修:株式会社フレアリンク
¥941 (2024/04/19 09:53時点 | Amazon調べ)

SQLの教科書は「スッキリわかるSQL入門第3版」です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次