JavaScriptのクラス入門【オブジェクト指向をわかりやすく】

JavaScriptクラス(class)の使い方を初心者向けに解説。constructor・メソッド・継承(extends)・static・getter・setterをコード例で紹介。中高生向け。無料。

2026年4月16日

JavaScript クラスとは?

JavaScriptの クラス(class) は、同じ構造を持つオブジェクトを効率よく作るための「設計図」です。

たとえば「ユーザー」というクラスを作ると、同じ構造(名前・年齢・メール)を持つユーザーオブジェクトを何個でも作れます。

クラスの基本的な書き方

class User {
  // コンストラクター:インスタンス作成時に実行される
  constructor(name, age) {
    this.name = name;
    this.age  = age;
  }

  // メソッド
  greet() {
    console.log(\`こんにちは、\${this.name}です!\`);
  }

  getInfo() {
    return \`\${this.name}(\${this.age}歳)\`;
  }
}

// インスタンスを作成
const user1 = new User('田中', 15);
const user2 = new User('鈴木', 14);

user1.greet(); // こんにちは、田中です!
console.log(user2.getInfo()); // 鈴木(14歳)

📖 詳しくはJavaScriptとは?初心者向け解説で解説しています。

継承(extends)

既存のクラスを元に新しいクラスを作ることを 継承(けいしょう) といいます。

class Animal {
  constructor(name) {
    this.name = name;
  }
  speak() {
    console.log(\`\${this.name}が鳴きます\`);
  }
}

// Animalを継承したDogクラス
class Dog extends Animal {
  speak() {
    console.log(\`\${this.name}:ワン!\`);
  }
}

const dog = new Dog('ポチ');
dog.speak(); // ポチ:ワン!

👉 配列入門も参考にしてください。

staticメソッド

static をつけたメソッドは、インスタンスを作らずにクラスから直接呼び出せます。

class MathHelper {
  static add(a, b) { return a + b; }
  static multiply(a, b) { return a * b; }
}

console.log(MathHelper.add(3, 5));      // 8
console.log(MathHelper.multiply(3, 5)); // 15

🔥 スコープとはで実践してみましょう。

クラスを使う場面

クラスはどんなときに使うのでしょうか。具体的な場面を紹介します。

場面1:同じ構造のデータを複数作るとき

たとえば「生徒」のデータを10人分作りたいとき、毎回オブジェクトを手書きするのは大変です。Studentクラスを作っておけば、new Student("太郎", 15)のように簡単に生徒オブジェクトを量産できます。

場面2:データと処理をセットにしたいとき

「生徒」には名前や年齢というデータと、「自己紹介する」「テストの点数を記録する」という処理があります。クラスを使えば、データ(プロパティ)と処理(メソッド)を1つにまとめられます。

場面3:ゲームのキャラクターを管理するとき

ゲームでは敵キャラクターや味方キャラクターをクラスで定義することが多いです。HP、攻撃力、防御力などのプロパティと、攻撃する、回復するなどのメソッドをまとめます。

クラスを使う前に、オブジェクトの基本を理解しておくとスムーズです。「JavaScriptオブジェクト入門」でプロパティやメソッドの基本を確認しておきましょう。

クラスの構成要素

クラスには主に3つの構成要素があります。

コンストラクタ(constructor)

クラスからオブジェクトを作るとき(new するとき)に自動で実行される特別なメソッドです。プロパティの初期値を設定するために使います。引数で受け取った値をthis.プロパティ名に代入します。

プロパティ

オブジェクトが持つデータです。this.nameやthis.ageのように、thisをつけて定義します。各オブジェクトが独自の値を持ちます。

メソッド

オブジェクトが持つ関数です。クラスの中に関数を書くだけで定義できます。functionキーワードは不要です。メソッドの中ではthisを使って、そのオブジェクト自身のプロパティにアクセスできます。

関数の基本を復習したい人は「JavaScript関数入門」を読んでみてください。

クラスでよくあるミス

ミス1:newを忘れる

クラスからオブジェクトを作るときは、必ずnewをつけます。newを忘れるとエラーになります。

ミス2:thisを忘れる

コンストラクタやメソッドの中でプロパティにアクセスするとき、thisを忘れると別の変数として扱われます。「this.name」と書くべきところを「name」だけにすると、プロパティに値が入りません。

ミス3:メソッドにfunctionをつける

クラスの中でメソッドを定義するとき、functionキーワードは不要です。「greet() { ... }」のように、メソッド名と丸かっこだけで書きます。

ミス4:コンストラクタを複数書く

1つのクラスにコンストラクタは1つだけです。2つ書くとエラーになります。

クラスは最初は難しく感じるかもしれません。でも「同じ構造のオブジェクトを簡単に作るための設計図」と考えれば、シンプルです。まずは簡単なクラス(名前と年齢だけ持つPersonクラスなど)から作ってみましょう。

クラスを使いこなせるようになると、大規模なプログラムも整理して書けるようになります。たとえばゲームを作るとき、Player、Enemy、Itemなどのクラスを定義すれば、それぞれの動きや状態を独立して管理できます。コードが増えても混乱しにくくなるのがクラスの最大のメリットです。

また、React、Vue、Angularなどのフレームワークでもクラスの考え方が使われています。今のうちにクラスの基本を理解しておけば、将来フレームワークを学ぶときにスムーズに入れます。焦らず、一つずつ概念を積み上げていきましょう。プログラミングの世界が広がります。

まとめ

  • class:オブジェクトの設計図
  • constructor:インスタンス作成時に実行される初期化処理
  • extends:既存クラスを継承して新しいクラスを作る
  • static:インスタンスなしで呼び出せるメソッド

クラスを使いこなすと、大規模なプログラムが整理しやすくなります。レッスンでさらに実践的な使い方を学んでみましょう。

🚀 JavaScriptをレッスンで学ぼう!

このサイトのJavaScriptコースでは、クラスを使った実践的なプログラムをブラウザだけで学べます。無料・登録不要です。

JavaScriptコースを見る →
目次

コースで実際に手を動かして学ぼう

レッスンではコードを書きながら基礎が身につきます

HTMLコースを始める →

この記事に出てくる用語

📣 この記事が役に立ったら

Xでシェア

💬 引用する場合はこちらをご利用ください:

JavaScriptクラス(class)の使い方を初心者向けに解説。constructor・メソッド・継承(extends)・static・getter・setterをコード例で紹介。中高生向け。無料。

出典: https://start-web-programming.com/blog/javascript-class/