- PR -

VBでのクラスの考え方について

1
投稿者投稿内容
Katsumi
会議室デビュー日: 2002/08/15
投稿数: 11
投稿日時: 2003-03-13 19:21
.NETの勉強をはじめた者です。
疑問に思っていることについて教えてください。

.NETになってオブジェクト指向に完全に移行したという
記事をよく見ます。

C#.NETでは、クラスでないものは存在できないという感触を受けたのですが、
VB.NETにおけるModuleの扱いはオブジェクト指向的にどう考えればよいのか
わかりません。

例えばプロジェクトにモジュールを追加して、以下の様に宣言したとします。

Module Module1
Public Abc As String
End Module

すると、Abcは、スタティックに、アプリケーション内で使えますよね?
このような、フィールドの宣言を、クラスの中でしていない場合、
オブジェクト指向との関係はどうなるのでしょうか?
(つまり、オブジェクト指向の外の動きと見えます。)

それとも、内部的には、Module1というのは、スタティックなクラスという
意味なのでしょうか?
でも、そうであれば、この変数を利用する場合、
Module1.Abc = "a"
などとしてコーディングしなければならないように思うのですが、
アプリケーションのどこからでも、
Abc = "a"
というふうに利用できます。

どう考えればよいのでしょうか?

初心者な質問ですが、よろしくお願いします。

小野@どっとねっとふぁん
ぬし
会議室デビュー日: 2001/10/30
投稿数: 402
投稿日時: 2003-03-13 19:32
このあたりの情報が参考になるかなぁ。
他の話のついでででてきてるのでわかりにくいかも。
http://www.users.gr.jp/ml/archive/aspx/1513.asp

Moduleはスタティックなクラス。
クラス名を必要としないのはVB.NETの言語的な特性。
(VBからの記述の継承)

といった理解でいいんじゃないかと思います。
1

スキルアップ/キャリアアップ(JOB@IT)