Java 速習チュートリアル

Java のクラスとオブジェクト

1. Javaにおけるクラスとオブジェクト

Javaはオブジェクト指向プログラミング(OOP)言語です。

Javaにおけるすべての要素は、そのアトリビュート(属性)やメソッドとともに、クラスおよびオブジェクトに関連付けられています。例えば、現実世界において「車」は一つのオブジェクトです。車には重量や色などの「アトリビュート」があり、走行する、ブレーキをかけるといった「メソッド」を持っています。

クラス(Class)は、オブジェクトを作成するためのコンストラクタ、あるいは「設計図(ブループリント)」のような役割を果たします。

2. クラスの作成

クラスを作成するには、class キーワードを使用します。

以下の例では、変数 x を持つ Main という名前のクラスを作成しています:

Main.java

public class Main {
  int x = 5;
}

「Javaの基本構文」の章で触れた通り、クラス名は常に大文字で始める必要があります。また、Javaのファイル名はクラス名と一致していなければならない点に注意してください。

3. オブジェクトの作成

Javaにおいて、オブジェクトはクラスから作成されます。クラスを定義した後、new キーワードを使用してオブジェクトを作成(インスタンス化)することができます。

例:myObj という名前のオブジェクトを作成し、x の値を出力します。

public class Main {
  int x = 5;

  public static void main(String[] args) {
    Main myObj = new Main();
    System.out.println(myObj.x);
  }
}

4. 複数のオブジェクト

一つのクラスから、複数のオブジェクトを作成することが可能です。

例:Main クラスのオブジェクトを2つ作成します。

public class Main {
  int x = 5;

  public static void main(String[] args) {
    Main myObj1 = new Main();  // オブジェクト 1
    Main myObj2 = new Main();  // オブジェクト 2
    System.out.println(myObj1.x);
    System.out.println(myObj2.x);
  }
}

5. 複数クラスの使用

あるクラスのオブジェクトを作成し、それを別のクラスからアクセスすることも可能です。これは、クラスの整理(データ構造を定義するクラスと、実行用の main() メソッドを持つクラスを分けるなど)をより適切に行うために頻繁に利用される手法です。

Javaのファイル名がクラス名と一致している必要があることを忘れないでください。この例では、同じディレクトリ(フォルダー)内に2つのファイルを作成します:

  • Main.java
  • Second.java

Main.java

public class Main {
  int x = 5;
}

Second.java

class Second {
  public static void main(String[] args) {
    Main myObj = new Main();
    System.out.println(myObj.x);
  }
}

両方のファイルをコンパイルすると以下のようになります:

C:\Users\Your Name>javac Main.java
C:\Users\Your Name>javac Second.java

Second.java ファイルを実行します:

C:\Users\Your Name>java Second

出力結果は以下の通りです:

5

クラスとオブジェクトについての詳細は、以降のチャプターでさらに深く掘り下げて学習していきます。