Sharedメンバ、SharedクラスSharedメンバ、Sharedクラス通常のメンバは、インスタンスごとに個々の値を持ちます。Carクラスを基にインスタンスを3回生成すると、車のオブジェクトが3台分できます。それぞれ、スピードを記憶できたり、ガソリンを積んだりしていますが、3台とも別々で動いているわけです。クラスのメンバの中で「Shared」を指定すると、静的メンバとなります。複数のオブジェクトから1つのデータを共有して利用することができるようになります。Sharedメンバはインスタンスを生成しなくても利用することができます。プロジェクトプロジェクトを作成して確認してみましょう。作成の準備CarクラスにSharedメンバを追加しましょう。「PropertyTest」をコピーしてプロジェクトを作成してください。プログラム次のように記述を追加・修正してください。解説8行目では、メーカー名を扱うフィールドを宣言しています。このフィールドはSharedキーワードがついているので、インスタンスを生成しなくても使えます。今回はPrivateとなっているので、内部からしか使えませんが、このクラスのオブジェクトが複数生成されたとしてもひとつしか用意されません。95~97行目では、Sharedメソッドを定義しています。Sharedメソッド内でフィールドやメソッドを参照する場合は、Sharedなメンバを指定できます。インスタンスメンバ(インスタンスを生成しないと使用できないメンバ)は利用できません。プログラムSharedメンバを利用する記述を追加しましょう。解説メーカー紹介のメニューを追加しました。48行目でメニュー紹介のIntroductionMakerメソッドの呼び出しをしています。このメソッドはSharedメソッドなので、「クラス名.IntroductionMaker()」となっていることに注目してください。