|
||
power spot. : Top / Profile / Site Map / History /
|
||
Top
power spot. へようこそ!
このサイトはじどりの創作活動(RPGツクールXPで製作しているゲームの公開、ゲーム系グラフィック素材の配布、ホームページ製作など)を紹介するサイトです。
× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 ![]()
メソッドについて
「クラス」と「インスタンス」の関係を整理すると分かりやすいかもですね。
Font # クラスオブジェクト Font.new # クラスメソッド Font.exist? # クラスメソッド Font.default_name # これもクラスメソッド f = Font.new # インスタンスを作る f.name # インスタンスメソッド f.size = 15 # インスタンスメソッド ようはクラスオブジェクトから呼び出すメソッドをクラスメソッド、インスタンスオブジェクトから呼び出すメソッドをインスタンスメソッドと呼ぶだけです。 RGSSのプロパティは普通はアクセサと呼ばれますが、これもただのメソッドなので注意が必要です。 長々と失礼しました~
無題
丁寧な説明、ありがとうございますm(_ _)m
春日さんに自分の(RGSS的な)もやもやを聞いていただきたいぐらいですw >ようはクラスオブジェクトから呼び出すメソッドをクラスメソッド、インスタンスオブジェクトから呼び出すメソッドをインスタンスメソッドと呼ぶだけです。 そういわれるとわかりやすいですね。 Graphics.update とかはフレームの更新ですよね。 そして大文字で始まっている=モジュール。 Graphicモジュールのupdateメソッドを呼び出していると。 あれ、モジュールメソッド?は日記の三つだとどれにはいるんですかね?
Re
モジュールメソッドは名前のとおりモジュールに定義されたメソッドですね。
モジュールはインスタンス化できないので、モジュールのメソッドは全てこの形になります。 クラスについてはクラス変数(@@で始まる変数)が同じクラスの全てのインスタンス内から参照できるので、これを利用するためにクラスメソッドを作ることが多いようです。 class Font @@default_name = "MS ゴシック" def self.default_name=(name) @@default_name = name end def initialize(name=nil) if name != nil @name = name else @name = @@default_name end # 省略 end # 省略 end ![]() |
![]()
Blog内検索
モバイルサイト ![]() |
|
Copylight 2000-2007 power spot. All Right Reserved. |