• 締切済み

クラス化ってそもそも何?

ityounomiの回答

回答No.4

私もいまVB2005を勉強している最中です。その質問よくわかります。私も書店にある本をかなり買いまくりました。今まではVBAしか使っていないので、VBを本格的に勉強して壁だらけです。本を数冊じっくり勉強すれば大体理解できますよ。VBでラベルとかテキストとかフォームとか、みんなクラスです。○○○.△△△こんな感じでオブジェクト.プロパティーみたいに何かを記述しますけど、たったこれだけでプログラムが作動するのは、実際には裏で複雑なコードが記述されていますよね。でも、使う人は○○○.△△△のみで動かすことができますよね。VBにはこういったオブジェクト・プロパティー・メソッドが沢山ありますが、クラスを作るということは簡単に言えば、クラスモジュールにこの目に見えない部分を記述しておいて、実際に使うときは、 ○○○.△△△というようにして使えるようにすることだと思います。 VBに用意されている、ラベルとか色々な部品は間違っても誤動作しませんよね。クラスを作成するときに、変数を完全に安全な状態にする必要があります。そうしないと、意図しないことから変数が変な値をとったりして誤動作したりするわけで。わたしも、勉強中で人に教授できる身ではぜんぜんありませんが、ともに同じ状況にありそうなので今まで学習した概念をちょっと書いてみました。超初心者なので間違いがあるかもしれませんので、あまり本気で鵜呑みにしないでくださいね。でも、クラスモジュールがわかると、「すご~い!」と感激が走りますよね。C言語なんかはオブジェクト指向のプログラムができないので、このクラス化ができることにより、使いこなせれば開発効率は全く違うと思います。ただ、Cは処理スピードが速いですが。オブジェクト指向やクラスの勉強にはJAVAがいいかもしれませんよね。

関連するQ&A

  • 抽象クラスの継承について

    すいませんがご教授下さい。 ASP.NETとVB.NETを使用してアプリを開発しています。 存在するクラスは以下のようなクラスです。 (WebForm1.aspxとWebForm1.aspx.vbとClass1.vb(抽象クラス)があります。) したい事はClass1.vbをWebForm1.aspx.vbが継承したいのですが継承させた後にWebForm1.aspxを開こうとすると「Webフォームデザイナにファイルを読み込めませんでした。・・・・」とエラーポップアップが表示されます。「はい」でHTMLは見れるのですがデザインはタブ自体がないです。普通のクラスを継承させると問題ないのですが。抽象クラスだとエラーになります。 対処方を教えて下さい。

  • メッセージボックスクラスみたいなものはありますか

    JAVA初心者です。 VBでのMsgBox、VCでのMessageBox関数みたいな、お手軽なクラスは用意されていないのでしょうか? やはり、参考書等にある様にJDialogクラスから継承させて地道に作成するしかないのでしょうか?

    • ベストアンサー
    • Java
  • VB.NET,2005でのオブジェクト指向、クラス設計のポイント。

    VB6ユーザでした。 これから、VisualStudio2005で、VisualBasiの開発を 新規に行う所です。 VB6ユーザの悩み所として、クラス設計があるかと思います。 オブジェクト指向の概念は理解しているのですが、 クラス設計のポイントをアドバイス頂けないでしょうか。 みなさんの、VB.NET、VisualStudio2005等での オブジェクト指向プログラミングの勘所を教えて頂けると 助かります。 思いつく事では・・・ 例1) 顧客DBがあり、いろんな画面から操作する場合、 顧客クラスを用意し、DB操作は、顧客クラスを経由して 行うとか。 例2) 出来るかどうか分かりませんが、 画面で共通部品となる部分を、クラス化し、継承して いくとか。 参考になるHPでも良いので、アドバイスをお願い致します。

  • クラスの継承の仕方

    後学のため、JavaScriptについて勉強しています。 JavaScriptでもクラス(のようなもの)を定義してオブジェクトを作成できるようですが、サブクラスを定義する方法が分かりません。メソッドやコンストラクタはどのように継承すればよいのでしょうか。 お分かりの方おられましたら、ご教授のほどお願い致します。

  • VBがオブジェクト指向言語でない理由

    一般的にVBはオブジェクト指向ではない(VB7でその方向へ向かう)といわれていますが、実際にVBをさわり始め、いろんな本を読んでみると、 1)クラスが作成でき、構造体と関数を1つにまとめ、メンバ(プロパティ・メソッド)を定義付けできる 2)Implementsステートメントでクラスの継承が出来る と、ある程度のオブジェクト指向言語の要件を備えているように見えます。 といっても私はJAVAもSmallTalkも知らないので、「何が真のオブジェクト指向か」というのを良く判っていないのかも知れないのですが。 しかしC++関連書などを読んでいると出てくるクラスの使用例などはVBのそれと大差なく、なぜクラスの作成もできて、継承も可能なVBがオブジェクト指向ではないのか? という疑問がわいてきました。 JAVAとは何が違うのか? これが出来ないからオブジェクト指向ではないのだ! という理由をご存じの方、回答もらえればうれしいです。

  • Javaの自作例外クラスについて

    Javaの自作例外クラスについて質問です。 Javaでは例外クラスを自作することが可能ですが、 その際に親クラスとして、ExceptionかRuntimeExceptionを継承する必要があります。 ここで、この二つのクラスのうちどちらを継承させた方が良いのでしょうか? それぞれのメリット・デメリットまたは用途などをご教授願いますでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • Java
  • オブジェクト指向言語について

    オブジェクト指向言語における、クラス継承の動作について ご教授ください。 クラスを継承する場合、extendsなどといったキーワードで継承の動きを 実現させるとおもいますが、継承とは、Aというクラスを丸々包含したBというクラスを作成することをいうのでしょうか? それとも、Aというクラス内にあるpublicやprotectedメンバのみをBというクラスに引き継ぐことをいうのでしょうか? 書籍にやサイトによっては【継承とは継承もとのprivateおよびprotecetd(に準じた)メンバを派生クラスに引き継がせる】という風に解釈できる文面で記述されているものがあります。 継承とは親クラスを拡張した子クラスを作成する と解釈できるような文面で記述された文献もあります。 伺いたいのは、クラス丸ごとを継承するのかそれともpublicおよびprotectedに準じたメンバのみを 継承するのかです。 OOPの思想や、ちょっと詳しいからといってこまごましたことを こたえてくるような方はご遠慮ください。

  • 抽象クラスを継承してクラスを作成の作り方が分かりません

    -------------------------------------- Employee -------------------------------------- -name : String #coin:double -------------------------------------- +getName():String +setName(String name):void +getcoin():double +setcoin(double Salary):void -------------------------------------- 抽象クラスを継承してクラスを作成 car1.java car2.java Employee.javaはIEmployeeを継承 IEmployee.javaは、メソッド"String getRoleName()を定義するインターフェース IEmployee.javaも作成 Sample.javaを実行し次の結果を得られるように作成 どなたか分かる方がいましたら教えて下さい。宜しくお願いします。

  • JAVA:抽象クラスとインタフェースクラスの違い

    インタフェースクラスの存在意義がわかりません。 「処理の実体まで実装せず、箱だけ作っておく」という意味では、抽象クラスで良いのでは?と感じます。 (厳密には、インタフェースクラスの方は、継承せずに、複数の実装パターンを分けれるという部分に違いはあると思いますが、ほぼ存在意義がないように感じます。)

    • ベストアンサー
    • Java
  • (VC++.Net) クラスにクラスを属性として追加できるでしょうか?

    初歩的な質問ですみませんが、教えてください。 #include <string> class A { int x; int y; std::string strX; //↑stringクラスを使いたい。 //(charだったり上手くいく。) }; とやると実行自体(コンパイラーエラーがたくさんでますが・・)は出来るのですが、アクションを掛けたら、"ハンドルしていない例外が発生しました"というエラーが出てしまいます。(←あたりまえか) stringクラスに限ったことではないのですが、自作のクラスを、ほかの自作のクラスへメンバ変数?的に使用したいのですが、上手くできません。一つ二つのクラスを、ほかのクラスで使用するならば、継承すればよいのですが、一つのクラスが、たくさんのクラスを使用するような場合、どのように記述すればよいのでしょうか? どこを勉強すればよいのでしょうか? ご教授のほど、よろしくお願いいたします。m( _ _ )m