カテゴリ: Javaのクラスとオブジェクト 更新日: 2026/04/09

Java のオブジェクトとは?クラスからインスタンスを作る方法

121
Java のオブジェクトとは?クラスからインスタンスを作る方法

新人と先輩の会話形式で理解しよう

新人

「先輩、Javaの“オブジェクト”ってよく聞くんですけど、それって何なんですか?」

先輩

「Javaでは、オブジェクトというのは実際に動かすことができる“実物”のことだよ。設計図であるクラスから作るんだ。」

新人

「クラスとオブジェクトって別のものなんですか?同じだと思ってました…」

先輩

「よくある勘違いだね!クラスは設計図で、オブジェクトはそれをもとに作った“動くモノ”だよ。これからJavaの基本をわかりやすく説明していくね。」

1. Javaのオブジェクトとは?(やさしく基本を解説)

1. Javaのオブジェクトとは?(やさしく基本を解説)
1. Javaのオブジェクトとは?(やさしく基本を解説)

Javaのオブジェクトとは、「クラス」という設計図から作られた実物のことです。クラスだけでは動かせないけど、クラスから作ったオブジェクトは、実際に情報を持ったり動かしたりすることができます。

たとえば、「人」というクラスがあったとすると、「たろうさん」や「はなこさん」といった個別の人がオブジェクトになります。それぞれが名前や年齢といった情報を持っている状態です。

Javaでは、こうしたオブジェクトをたくさん作ることで、複雑なプログラムもわかりやすく整理できます。

初心者のうちは、「オブジェクトはクラスから生まれる実物」と覚えておくと良いでしょう。

2. クラスとオブジェクトの関係を理解しよう(設計図と実物のたとえ)

2. クラスとオブジェクトの関係を理解しよう(設計図と実物のたとえ)
2. クラスとオブジェクトの関係を理解しよう(設計図と実物のたとえ)

Javaのクラスとオブジェクトの関係をわかりやすく説明するには、「設計図と製品」のたとえがとても効果的です。

たとえば、「椅子」を作りたいとき、まずはどんな形にするかを決めた「設計図」を描きますよね。この設計図が「クラス」にあたります。

その設計図をもとに、木材を使って実際に椅子を作ります。これが「オブジェクト」です。

同じ設計図を使えば、同じ形の椅子を何個でも作れます。色を変えたり、高さを変えたりしても、それぞれが独立したオブジェクトになります。

Javaでも同じように、クラスという設計図を1つ作れば、そこからたくさんのオブジェクト(インスタンス)を作ることができます。

実際にJavaのコードで書くと、次のようになります。


public class Person {
  String name;
  int age;

  void introduce() {
    System.out.println("こんにちは、私は" + name + "です。年齢は" + age + "歳です。");
  }
}

このPersonクラスは「人」という設計図です。このクラスを使ってオブジェクトを作ってみましょう。


public class Main {
  public static void main(String[] args) {
    Person p1 = new Person();
    p1.name = "たろう";
    p1.age = 20;
    p1.introduce();

    Person p2 = new Person();
    p2.name = "はなこ";
    p2.age = 18;
    p2.introduce();
  }
}

こんにちは、私はたろうです。年齢は20歳です。
こんにちは、私ははなこです。年齢は18歳です。

このコードでは、Personクラスからp1p2という2つのオブジェクトを作っています。それぞれに名前と年齢を設定して、introduceメソッドを使って自己紹介をさせています。

このように、クラスから作ったオブジェクトは、独自の情報を持ち、動きを実行することができます。

Pleiadesを使えば、上のコードをすぐに書いて動かすことができます。初心者の方も、ぜひ試してみてください。

Javaの「オブジェクト指向」では、このクラスとオブジェクトの関係がとても重要です。難しく考えずに、「設計図から何個でも実物を作れる」というイメージを持つだけで、理解がぐっと深まります。

3. Javaでインスタンスを作るには?(newの使い方を解説)

3. Javaでインスタンスを作るには?(newの使い方を解説)
3. Javaでインスタンスを作るには?(newの使い方を解説)

Javaでオブジェクト(インスタンス)を作るときは、必ずnewというキーワードを使います。このnewは、「新しいものを作る」という意味で、クラスから実物を作るときに使われます。

たとえば、「Person」クラスからインスタンスを作るには、次のように書きます。


Person p1 = new Person();

この1行には大きく3つの意味があります。

  • Person:これは作りたいオブジェクトの型です。つまり、Personクラスのことを指しています。
  • p1:これはそのオブジェクトを使うための「名前」です。自分でわかりやすい名前をつけられます。
  • new Person():これが実際にPersonクラスからインスタンスを作る部分です。

このように、Javaでは「クラス名+new+()」という形で、新しいオブジェクトを作ることができます。

このやり方はどんなクラスでも基本的には同じなので、最初にしっかり覚えておくと、Javaの学習がとてもスムーズになります。

PleiadesでJavaのコードを書くときも、この形式でインスタンスを作って、変数に入れておけば、あとでそのオブジェクトの情報や動きを自由に使うことができます。

Javaをこれから始める人や、 オブジェクト指向の考え方を基礎から理解したい人には、 定番の入門書がこちらです。

スッキリわかるJava入門 第4版をAmazonで見る

※ Amazon広告リンク

4. 複数のオブジェクトを作ってみよう(それぞれに異なるデータを入れる)

4. 複数のオブジェクトを作ってみよう(それぞれに異なるデータを入れる)
4. 複数のオブジェクトを作ってみよう(それぞれに異なるデータを入れる)

Javaでは、同じクラスからいくつでもオブジェクト(インスタンス)を作ることができます。そして、それぞれのオブジェクトは自分だけの情報を持つことができます。

たとえば、先ほどのPersonクラスを使って、「たろうさん」と「はなこさん」という2人のオブジェクトを作り、それぞれに違う情報を入れてみましょう。


public class Main {
  public static void main(String[] args) {
    Person p1 = new Person();
    p1.name = "たろう";
    p1.age = 20;

    Person p2 = new Person();
    p2.name = "はなこ";
    p2.age = 18;

    Person p3 = new Person();
    p3.name = "けんた";
    p3.age = 25;

    p1.introduce();
    p2.introduce();
    p3.introduce();
  }
}

こんにちは、私はたろうです。年齢は20歳です。
こんにちは、私ははなこです。年齢は18歳です。
こんにちは、私はけんたです。年齢は25歳です。

このコードでは、同じPersonクラスを使ってp1p2p3という3つのインスタンスを作っています。そして、それぞれに違う名前や年齢を設定しています。

それぞれのインスタンスが自分だけのnameageを持っていて、それを使ってintroduce()メソッドで自己紹介をしています。

このように、Javaではクラスが1つあれば、たくさんのオブジェクトを自由に作ることができます。そして、それぞれに個別のデータを持たせることができるので、たとえば「ユーザー一覧」や「商品一覧」などを扱うプログラムも、クラスとオブジェクトの仕組みでスッキリ作ることができます。

この使い方は、初心者向けのJava学習でも非常に大切な部分です。オブジェクトを使いこなせるようになると、プログラムがもっと面白く、便利になります。

実際にPleiadesでこのコードを入力して実行してみてください。出力結果がきちんと変わることで、オブジェクトごとにデータが独立していることが体感できます。

このようにして、Javaではクラスとインスタンスを組み合わせることで、「モノとその動き」をうまくプログラムの中で表現できるようになります。これはJavaのオブジェクト指向の基本中の基本なので、しっかりと覚えておきましょう。

5. オブジェクトにデータを入れて使う方法(フィールドの代入)

5. オブジェクトにデータを入れて使う方法(フィールドの代入)
5. オブジェクトにデータを入れて使う方法(フィールドの代入)

Javaで作ったオブジェクトには、「データ」を入れることができます。このデータは、クラスの中に定義された「フィールド(変数)」に代入します。

たとえば、Personクラスにはnameageというフィールドがありました。オブジェクトを作ったあとに、次のようにしてデータを代入できます。


Person p1 = new Person();
p1.name = "たろう";
p1.age = 20;

このように、オブジェクト名.フィールド名という形で、値を代入することができます。

これで、p1というオブジェクトには「名前:たろう」「年齢:20歳」という情報が入りました。

この情報は、あとでプログラムの中で使うことができます。たとえば、画面に表示したり、条件分岐に使ったりすることができます。


System.out.println("名前:" + p1.name);
System.out.println("年齢:" + p1.age + "歳");

名前:たろう
年齢:20歳

このように、オブジェクトにデータを入れておくことで、必要なときにそのデータを取り出すことができます。

複数のオブジェクトを作った場合、それぞれのオブジェクトは独立しているので、別々のデータを持つことができます。


Person p2 = new Person();
p2.name = "はなこ";
p2.age = 18;

p1p2は同じクラスから作られていますが、それぞれ違う情報を持っています。このように、オブジェクトを使い分けることで、たくさんの人やモノをプログラムの中で表現できるようになります。

初心者のうちは、オブジェクトに「データを代入する→あとで使う」という流れを何度も繰り返して、自然に身につけていきましょう。

6. オブジェクトの動きを実行する(メソッドの呼び出し)

6. オブジェクトの動きを実行する(メソッドの呼び出し)
6. オブジェクトの動きを実行する(メソッドの呼び出し)

Javaのオブジェクトは、ただデータを持っているだけではなく、「動き」も持つことができます。この動きは、クラスの中に書かれた「メソッド」として定義されます。

たとえば、Personクラスにintroduce()というメソッドがありました。これは、自己紹介をするための動きです。

オブジェクトからこのメソッドを呼び出すには、次のように書きます。


p1.introduce();

オブジェクト名.メソッド名()という形で書くことで、そのオブジェクトが持っているメソッドを実行できます。

このようにして、オブジェクトの動きを自由に操作できるのが、Javaの大きな特徴です。

さらに、オブジェクトごとにデータが違えば、同じメソッドを使っても、出力される結果が変わってきます。


p1.introduce(); // たろうの自己紹介
p2.introduce(); // はなこの自己紹介

こんにちは、私はたろうです。年齢は20歳です。
こんにちは、私ははなこです。年齢は18歳です。

このように、オブジェクトに合わせて動作が変わるのも、Javaのオブジェクト指向の魅力の一つです。

初心者のうちは、メソッドは「そのオブジェクトが持っている動き」と覚えておくと理解しやすいです。

Javaでは、自分で新しいメソッドを作ることもできます。たとえば「歩く」「走る」「眠る」など、クラスに合わせた動きを増やすことで、よりリアルで便利なオブジェクトを作ることができます。

Pleiadesでは、コードを打ってすぐに動かすことができるので、いろいろなメソッドを試しながら学んでいきましょう。

7. 振り返りと初心者へのメッセージ

7. 振り返りと初心者へのメッセージ
7. 振り返りと初心者へのメッセージ

ここまで、Javaの「オブジェクトとは何か?」という基本から、「クラスとの関係」「インスタンスの作り方」「データの入れ方」「メソッドの使い方」までを見てきました。

最初は「クラス?インスタンス?オブジェクト?」と混乱するかもしれませんが、実際にコードを書いてみると少しずつ見えてきます。

クラスは設計図、オブジェクト(インスタンス)はその実物。これをしっかりイメージできるようになると、Javaのプログラムをスムーズに書けるようになります。

今回紹介したPersonクラスのように、自分の身近なモノをプログラムにしてみるのもおすすめです。「ペット」「本」「商品」など、自分でクラスを考えて、オブジェクトを作ってみましょう。

Javaは、最初はむずかしそうに見えるかもしれませんが、ひとつひとつ丁寧に理解していけば、必ず使いこなせるようになります。

これからも少しずつステップアップしながら、「Javaの基本」をしっかり身につけていきましょう。

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Javaのオブジェクトとは一体何のことですか?初心者にもわかりやすく教えてください。

Javaのオブジェクトとは、プログラミングの世界における「実物」や「モノ」のことです。Javaのプログラムは「クラス」という設計図を元に動きますが、設計図そのものはただの情報であり、実際に動かすことはできません。その設計図から実体として作り出されたものがオブジェクトです。例えば「車」という設計図(クラス)から、実際に公道を走ることができる「私の赤い車」や「隣の家の青い車」を作るイメージです。Java初心者の方は、まず「オブジェクトはクラスから生まれる実際に動かせる実物である」という基本概念をしっかり押さえておきましょう。この考え方が、Javaのオブジェクト指向プログラミングを理解する第一歩となります。
Javaのクラスとオブジェクトの一覧へ
新着記事
Java
Java のカプセル化とは?データを安全に管理する仕組み
Java のカプセル化とは?データを安全に管理する仕組みを解説
Java
Java の継承の制約(final クラスや final メソッドの扱い)
Java の継承の制約を完全解説!final クラスや final メソッドの扱いを初心者向けにやさしく解説
AWS
【AWS】CLIで環境変数を使った安全な認証情報管理
【AWS CLI】環境変数で安全に認証情報を管理する方法を徹底解説!初心者向けセキュリティ対策ガイド
Java
Java のコンストラクタと継承(親クラスのコンストラクタを呼ぶ方法)
Java のコンストラクタと継承(親クラスのコンストラクタを呼ぶ方法)を初心者向けにやさしく解説
人気記事
AWS
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説
AWS
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
AWS
インスタンスタイプの料金比較と最適な選び方(最新2026年版)
AWSインスタンスタイプの料金比較と最適な選び方!初心者でもわかる2025年最新ガイド
AWS
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク