兵藤です
ありがとうございました
man-1.0を読み直していくつかテストスクリプトを書いてわかりました

Masaki SuketaさんのMon, 27 Oct 97,05136
[ruby-list:5136] Re: class method, instance method  へのreplyです
> クラスメソッドは、クラスをオブジェクトとしてみたときの
> 特異メソッドです。特異メソッドの説明で、クラスメソッド
> に触れてます。

rubyではクラスメソッドにあたるものを特異メソッドというのですね
いままで特異メソッドはなんだろうと思いながら
特異メソッド関連を読み飛ばしていたばちがあたりました ^^;


matz / netlab.co.jp (Yukihiro Matsumoto)さんのMon, 27 Oct 97,05137
[ruby-list:5137] Re: class method, instance method  へのreplyです
> tailはMeimiクラスのインスタンスが存在しない場所でも呼ばれる
> ので,そのままではインスタンスのメソッドであるheadを呼べませ
> ん.どうしても呼びたければ内部でMeimi.newでインスタンスを生
> 成してメソッドを呼ぶことになるでしょう.


ただそれ以前に最初に間違った思いこみをしていました (^^;
特異メソッドから呼び出されるprivateな関数を作りたかったのですが
まず、初期化関連はnewのときに自動的に呼ばれるインスタンスメソッドの
initializeでしなれけばいけないことに気がついていませんでした
# initializeはインスタンスメソッドなので他のprivateメソッドを呼べました ^^;

つぎに、特異メソッドからprivateな特異メソッドに処理をまかせようとして
privateではなくprivate_class_methodを用いることに気がつきませんでした
(マニュアルはよく読まなきゃですね..)

特異メソッドの中でインスタンスを生成する方法は意外でした
試してみたらこれもうまくいきました


じつはnewではなくopenで初期化できるようにしようとしてはまっていました
その後とりあえずnewとinitializeを使うようにして動くようにしたのですが
ftplib.rbを見直していて特異メソッドの中でnewを(関数形式でもどちらでも)
呼び出すことができることにようやく気づきました ^^;
newが呼ばれると自動的にinitilizeメソッドが実行されるので
うまく処理できるコードが書けました

ps.
(C++Builderで作る前のプロトタイプとして)
メール箱を読み書きできるクラスをrubyで作っています
まずNeXTのメール箱を読めるようにしています
そのあとWindowsのEudoraとBecky!のメール箱に対応させるつもりでいます

---
'ruby', perl-4.x like(?) object oriented language
ruby homepage: http://www.netlab.co.jp/ruby/jp/
hyoudo / kcn.or.jp http://www.kcn.or.jp/~hyoudo/nextstep/ 兵藤公一