2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

40 代おっさん GASのクラスとインスタンス化を学ぶ

Posted at

本記事ついて

本記事は プログラミング初学者の私が学習していく中でわからない単語や概要をなるべくわかりやすい様にまとめたものです。
もし誤りなどありましたらコメントにてお知らせいただけるとありがたいです。

クラス、インスタンス、インスタンス化の定義を説明

クラスとは

オブジェクトの特性を定義するひな形

インスタンス化とは

クラスを元にしてオブジェクトを生成することをインスタンス化

インスタンスとは

インスタンス化により生成されたオブジェクトをインスタンス

クラス定義とnew演算子によるインスタンス化

クラス定義は、class分を使用して記述する。

class クラス名 {
  //クラス定義
}

クラスをインスタンス化するには、new演算子を使って記述をする。

new クラス名 (引数1, 引数2, ...)

クラスを使用する場合は、グローバル領域に記述してグローバルとすることが多い。
ローカルスコープだと、そのスコープ内でしか使えないため。

コンストラクタ

クラスというのは、どのようなプロパティやメソッドをインスタンスに持たせるかを定義したものと言い換えることができる。
クラスにプロパティを定義するには、コンストラクタと言う特別な関数を使用する。

コンストラクタというのは、クラスをインスタンス化する際に、最初に呼び出される関数

コンストラクタを定義するにはclass文内にconstructorと言う名前のメソッドを定義する。
これをconstructorメソッドと言う。

構文

class クラス名 「
  constructor(仮引数1, 仮引数2, ...) {
    //処理
  }
}

constructorメソッドはnew演算子を用いたインスタンス生成時に呼び出される。

構文

new クラス名(仮引数1, 仮引数2, ...)

お試し

function toshiki() {
  class Person {
    constructor(name, age) {
      this.name = name;
      this.age  = age;
    }
  };

  const p1 = new Person('利樹', 4);
  console.log(p1);

  const p2 = new Person('アッキー', 9);
  console.log(p2);
}

thisキーワード

コンストラクタ内でthisと記述した場合、それはこれから生成されるインスタンスのことを表す。

インスタンスのメンバーの変更

インスタンスはオブジェクトですから値の変更や追加が可能

お試し

function toshiki() {
  class Person {
    constructor(name, age) {
      this.name = name;
      this.age  = age;
    }
  };

  const p1 = new Person('利樹', 4);
  p1.age += 5;
  p1.favorite = 'みかん';
  console.log(p1);
}

参考資料

https://www.amazon.co.jp/s?k=google+apps+script+%E5%AE%8C%E5%85%A8%E5%85%A5%E9%96%80&adgrpid=110264232688&gclid=CjwKCAiA9aKQBhBREiwAyGP5lSl7AJJLCvOEHb4wQgMlyqW1fll5X8GDTT_Rkd1_soUAyIPMXQr26hoClHEQAvD_BwE&hvadid=553833563682&hvdev=c&hvlocphy=1009076&hvnetw=g&hvqmt=b&hvrand=4378489642044417389&hvtargid=kwd-594191211348&hydadcr=4106_13159878&jp-ad-ap=0&tag=googhydr-22&ref=pd_sl_2x1owglv0s_b_p52

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?