「クラスとは何か」を優しく教える方法
クラスとは何か、を入門者にも優しく教えるにはどうしたら良いんでしょうかね〜。抽象データ型経由で教える、と言うのも一つの手だと思うのです。
例えば、
- 型ってつまるところ「どのように操作できるか」って事なんだよ
- 型を作るには、どのように操作できるか(メソッド・インターフェイス)とその内部実装(メンバフィールドとメソッドの実装)が出来る仕組みが言語にあればいいんだよ。
- この「型」をクラス、その型の具体的な「値」を「インスタンス」と言いますよ〜。
と教えておいて、
と教えといて、
- 本当はクラスもオブジェクトにして、メソッドやフィールドを持たせたいところだったのだけど、そうなると、いろいろ問題が出てきます。
- でもメソッドやフィールドがクラスにもあると便利です。
- なので、Javaでは、静的なメソッドやフィールドをクラスの名前空間に所属させる方法を取っています。(事実上、クラスメソッドやクラスフィールドと同等のことができます)
となると思いますが、・・・いや、これは逆に解りにくいかも(^^; (どうなんだろ?)