クラス・インスタンス - classes, instances(Java 第4回)

はじめに

第4回はクラス・インスタンスである。
OOPの基本的な用語について改めて確認する。

クラスとは

オブジェクトを作るための設計図。オブジェクトが持つfieldとmethodを定義する。

クラスの解説

フィールド(fields, attirbutes):
オブジェクトの状態を保存しておく変数。クラス内で定義する(但しメソッドの外部)。

メソッド(methods):
オブジェクトのふるまいを定義する(オブジェクトが持つ関数っぽいやつ)。オブジェクトのフィールドにアクセスして修正できる。

コンストラクタ(constructor):
オブジェクトが作成される際に呼び出される特別なメソッド。大抵オブジェクトのフィールドを初期化する。

修飾子(modifier):
クラスやフィールドやメソッドのアクセス範囲を指定する。public, private, protectedなど。

public class Person {
    // Fields
    private String name;
    private int age;

    // Constructor
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // Methods
    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }

    public void sayHello() {
        System.out.println("Hello, my name is " + name + " and I am " + age + " years old.");
    }
}

インスタンスとは

オブジェクト(という概念)を実際にメモリ上で生成したもののこと。
new+constructorでインスタンスを生成できる。

// Creating instances of the Person class
Person person1 = new Person("Alice", 30);
Person person2 = new Person("Bob", 25);

// Accessing fields and methods of the instances
System.out.println(person1.getName()); // Outputs "Alice"
System.out.println(person1.getAge()); // Outputs "30"
person1.sayHello(); // Outputs "Hello, my name is Alice and I am 30 years old."

まとめ

OOPの深い理解のために、クラスとインスタンスを正しく理解しておきたいですね。
第5回は抽象クラスです。

注意

このページは大学のJavaの授業の予習で書いています。
直観的な理解をメモしているだけなので、厳密なところでは誤りがあるかもしれません。