亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

JavaScript クラスの定義とインスタンス化

クラス定義

厳密に言えば、JavaScript はオブジェクトベースのプログラミング言語であり、オブジェクト指向プログラミング言語ではありません。

オブジェクト指向プログラミング言語 (Java、C++、C#、PHP など) では、class キーワードを使用してクラスを宣言します。

例: public class Person{}

しかし、JavaScript にはクラスを宣言するためのキーワードがなく、クラスのアクセス権を制御する方法もありません。

JavaScript は関數(shù)を使用してクラスを定義します。

構(gòu)文:
function className(){
// 特定の操作
}


たとえば、Person クラスを定義します:

function Person() {
    this.name=" 張三 ";  // 定義一個(gè)屬性 name
    this.sex=" 男 ";  // 定義一個(gè)屬性 sex
    this.say=function(){  // 定義一個(gè)方法 say()
        document.write("嗨!大家好,我的名字是 " + this.name + " ,性別是 " + this.sex + "。");
    }
}

説明: このキーワードは現(xiàn)在のオブジェクトを參照します。

オブジェクトの作成(クラスのインスタンス化)

オブジェクトを作成するプロセスは、クラスのインスタンス化のプロセスでもあります。

JavaScript では、オブジェクトの作成 (つまり、クラスのインスタンス化) に new キーワードを使用します。

構(gòu)文:
new className();

上記の Person クラスをインスタンス化します:

var zhangsan=new Person();
zhangsan.say();

コードを?qū)g行し、次の內(nèi)容を出力します:
こんにちは!皆さんこんにちは、私の名前は張三、性別は男性です。

クラスを定義するときにパラメータを設(shè)定でき、オブジェクトを作成するときに対応するパラメータを渡すこともできます。

次に、Person クラスを再定義します。

function Person(name,sex) {
    this.name=name;  // 定義一個(gè)屬性 name
    this.sex=sex;  // 定義一個(gè)屬性 sex
    this.say=function(){  // 定義一個(gè)方法 say()
        document.write("嗨!大家好,我的名字是 " + this.name + " ,性別是 " + this.sex);
    }
}
var zhangsan=new Person("小麗","女");
zhangsan.say();

コードを?qū)g行すると、次の出力が出力されます。
こんにちは!皆さんこんにちは。私の名前はシャオリ、性別は女性です。

學(xué)び続ける
||
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>無標(biāo)題文檔</title> <script>function Person(name,sex) { this.name=name; // 定義一個(gè)屬性 name this.sex=sex; // 定義一個(gè)屬性 sex this.say=function(){ // 定義一個(gè)方法 say() document.write("嗨!大家好,我的名字是 " + this.name + " ,性別是 " + this.sex); } } var zhangsan=new Person("小麗","女"); zhangsan.say();</script> </head> <body> </body> </html>
提出するリセットコード