どこらへんがシリーズなの?
おしえて! みのもん!(ポケモンぽい)
(注:今回は痛烈にプログラマ向け。)
冠詞って言うと、ジスイズアペンでおなじみの、アペンのアの部分。aとかanとかtheとか。定冠詞(the)と不定冠詞(a,an)の二種類で固定だから、覚えるのは別に簡単。つけ方も簡単。
ただ、どこで付けてどこで付けないのかが超ワカメ。それが冠詞。
よくわからないので、わかるものに置き換えて考えてみる。冠詞 in オブジェクト指向(*1)。
まず、割とまともな英文法ぽく見てみると、こんな感じ。
「太陽」は一つしかない→不加算名詞なので、The sun。
「水」は数えられない→不加算名詞なので、The water。
「抽象的に"水"と言うもの」を言う場合は単に、Water。
「りんご」はいくつもある→可算名詞なので、An apple。
「抽象的に"りんご"と言う存在」を言う場合は、Apples。
こういうのを、(強引に)オブジェクト指向的にまとめると次のようになる。
(定義)----------------------------------
加算名詞 = クラス
不加算名詞 (1) = Singletonパターンのクラス(インスタンスが一つに限定される)
不加算名詞 (2) = 抽象クラス
定冠詞 = 無名クラスを定義(その場でサブクラスを作ってインスタンス化)
不定冠詞 = new(インスタンス化)
Staticアクセスの手続き
・加算名詞の場合 = 冠詞なし+末尾に s
・不加算名詞の場合 = 冠詞なし
(例1)----------------------------------
加算名詞"Apple"は、クラス。
不加算名詞"Sun"は、Singletonパターンのクラス。
("Sun"は一つしか無い。逆に言えば、一つはある。)
不加算名詞"Love","water"は、抽象クラス。
("Love"は実体のない概念なので、数えることが出来ない。)
("water"も同じ。いかにも実体を指しているようでいて、実は無数の粒子のかたまりを漠然と"water"と呼んでいるだけなので、単なる概念。)
(例2)----------------------------------
たとえば、クラス"Apple"には、
・メンバ変数"price"
・クラス変数"color"
が、定義されているとする。
クラス"Apple"のメンバ変数"price"にアクセスするには、"Apple"をインスタンス化する必要がある。
⇒インスタンス化するには、不定冠詞を使う。
The price of an apple. (new Apple().price)
インスタンス化しない場合、
The price of apple. (Apple.price (エラー))
クラス自体からメンバ変数にアクセスすることは出来ないため、コンパイルエラーとなる。
ただし、クラスへのStaticアクセスは、所定の手続きを踏むことで行える。
クラス"Apple"のクラス変数"color"にアクセスする場合。
⇒加算名詞へのStaticアクセスは「冠詞なし+末尾に s」
The color of apples. (Apple.color)
(例3)----------------------------------
たとえば、抽象クラス"Love"には、
・メンバ変数"length"
・クラス変数"power"
が、定義されているとする。
抽象クラス"Love"は、そのままではインスタンス化出来ない。
A Love. (new Love() (エラー))
抽象クラス"Love"を使うには、無名クラスを使うか、Staticアクセスするかの二つの方法がある。
まず、無名クラスでサブクラス化したものをインスタンス化した場合。
メンバ変数"type"へのアクセス。
⇒無名クラスは定冠詞で作る。
The length of the love. ( Love TheLove = new Love(){実装}; TheLove.length )
クラスへStaticアクセスする場合。
クラス変数"power"へのアクセス。
⇒不可算名詞へのStaticアクセスは「冠詞なし」
The power of love. (Love.power)
・・・
力尽きた。
部分部分でのほころび(*2)はご愛嬌としても、不加算名詞 (1)の解釈が超厳しい。The sun. はSingletonなクラスを無名クラスで再定義するの?きゃー意味不明やん。でも太陽はどう考えてもSingletonのような。
あー、あと、固有名詞の場合とかもあったし!
あ、上からタライが
ガンッ からんころんからんころん ころんからん…
なんてベタな。
*1)オブジェクト指向っていうか、実はJava。でも根っこはオブジェクト指向から来てるし、こう書いたほうがまだ読者層を狭めなくて済むかなぁーって。思ったの。
*2)例文中のpriceとかpowerとかの冠詞が適当。あと、The price of apple.はインスタンス化(an apple)してないからエラーって書いたけど、ほんとかー?
0 コメント:
コメントを投稿