WSHを本格的に使いこなすためにはオブジェクトの知識が欠かせない。クラスやオブジェクト、プロパティとは? エラー処理についても解説。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
前回までは、WSH(Windows Script Host)の基本的な構文や記述方法について解説してきた。これだけでも数値計算や文字列処理といった一通りのことは可能であるが、今回からは、WSHを便利に使いこなすのに必要となる「オブジェクト(Object)」について取り上げる。
第1回でオブジェクトとは「便利な機能を実現するための道具」と書いたが、ここではもう少し詳しく説明しよう。
オブジェクト(Object)は英語で「物」を意味するが、その言葉の意味するとおり、ある機能を持った「物」である。オブジェクトは物なので、一般用語の「物」と同じように、その物ごとの性質や動作を持っている。
例えば著者自身を表す「大介」というオブジェクトを考えてみよう。
「大介」オブジェクトは、「名前」「性別」「身長」「誕生日」「住所」などの「性質」を持っている。この性質のことをプログラミング用語で「プロパティ(Property)」という。これらのプロパティには実際にはある値が含まれている。例えば、「名前」には「牟田口大介」、「性別」には「男」、「身長」には「180cm」、「誕生日」には「5月26日」、「住所」には「兵庫県芦屋市」などの値を持っている。これらの値は固定のもの(変更できないもの)もあるし、変更されるものもある。例えば「大介」オブジェクトの「誕生日」プロパティは変更できないが、「大介」オブジェクトが引っ越した場合、「住所」プロパティの値が「神奈川県横浜市」に変化したりする。
「大介」オブジェクトはいろいろな「動作」をすることができる。例えば「走る」「食べる」「寝る」などである。これらの動作のことをプログラミング用語で「メソッド(Method)」という。メソッドには、動作を行う対象物や条件などの付加情報を要するものもある。これは関数の説明で登場した「引数」である。例えば「食べる」メソッドには「食べ物」という引数が存在する。
■連載目次
第1回 WSHを始めよう
第2回 VBScript基本(1)文字列の入出力
第3回 VBScript基本(2)計算と分岐処理
第4回 関数を使いこなす:文字列、数値、日付
第5回 データ型について理解を深めよう
第6回 VBScriptの配列を極める
第7回 Subプロシージャで処理を定義
第8回 Functionプロシージャで関数を定義
第9回 VBScriptのオブジェクトを使いこなす
第10回 WScriptオブジェクト(1)
第11回 WScriptオブジェクト(2)
第12回 WshShellオブジェクト(1)
第13回 WshShellオブジェクト(2)
第14回 WshShellオブジェクト(3)
第15回 WshNetworkオブジェクト
第16回 FileSystemObjectオブジェクト(1)
第17回 FileSystemObjectオブジェクト(2)
第18回 FileSystemObjectオブジェクト(3)
第19回 TextStream/Dictionaryオブジェクト
「大介」オブジェクトがどんなプロパティやメソッドを持っていて、実際にどんな振る舞いをするかの情報は、「人間」クラス(Class)に記述されている。すなわち、クラスとはオブジェクトの設計図だ。「人間」クラスを実体化(これを「インスタンス化」という)させたのが「大介」オブジェクトであり、ほかにも「花子」オブジェクトや「太郎」オブジェクトなども実体化することができる。これらのオブジェクトはそれぞれ違ったプロパティの値を持つ。オブジェクトとクラスの関係を、これまで述べた「大介」オブジェクト、「人間」クラスを例にとって図にしたものを次に示す。
自分でクラスを書くか、あるいは誰かの作ったクラスをインスタンス化し、オブジェクトとして使用するのが「オブジェクト指向プログラミング」の基本である。まずはVBScriptにどんなオブジェクトがあるのか見ていこう。
Copyright© Digital Advantage Corp. All Rights Reserved.