Open Source Web Development Tutorials - Dev Shed
Java入門:オブジェクト指向プログラミング
(2008/12/10公開)
Javaとオブジェクト指向プログラミング
昔は、学校に通うのに雪嵐の寒い風が吹く中1マイルも歩いたものだった(おじいさんやおばあさんはデイケアに通うのに同じことをしていたのだから、もっと大変だったはずだ)。それだけではなく、ボタンやスクロールバーなしでプログラムを作らなきゃならなかった。今ではもちろん、オブジェクト指向プログラミングがある。この記事ではJavaに関連する最も重要な概念をご紹介しよう。
オブジェクト指向プログラミング(以下、OOP)には5つの基本的な概念が採用されている。それぞれの基本原則とそれがプログラミングのプロセスにどう関係しているのかをご説明しよう。
オブジェクト(objects)
簡単に言うと、オブジェクトとは読者の身の回りにある日常的なものをシミュレートする抽象的表現のことである。もし読者がWindowsあるいは90年代半ば以降に作られたアプリケーションを使用しているなら、何千回となく目にしているはずだ。さまざまな形態のものがある。例えば、ボタン、プルダウンメニュー、スクロールバー、そしてどんなに頑張っても決して満タンにならないあの小さなごみ箱などが挙げられる。これらはすべてオブジェクトであり、デジタルな外見であるにもかかわらず、そのようなものとして扱われるのだ。
これはどういう意味だろう?いいや、コンピューター画面のボタンを手で押すということではない。ましてやデジタルのごみ箱を歩道に出してごみ収集作業員に回収してもらうなんてことではない。オブジェクトには状態(state)と振る舞い(behavior)という2つの特性がある。この両方についてもっと詳しくご説明しよう。
状態(state)
フロリダ、ヴァージニア、アイダホ・・・これらはすべてstate(米国の州の意)の例だが、残念ながら、これは間違った例だ。プログラミングの用語でstateという場合は、オブジェクトを説明するものになる。仮に筆者のガールフレンドがオブジェクトだとしよう(なんてことは、彼女に元カノになってほしいと本当に思っていない限りありえないが)。この場合、彼女の状態(state)を次のように表現できる:赤毛、白人、彼女の名前。もしかしたら、彼女は筆者がごみを出さないことイライラしているかもしれない。これも、状態になりえる。同様に、プログラム内のオブジェクトにも似たような状態がある。オブジェクトの状態の数はオブジェクトごとに違ってくる。例えば、テレビにはオンの状態とオフの状態がある。一方、人には数え切れないほどの状態がある。起きている状態、寝ている状態、空腹の状態、疲れた状態、退屈な状態などだ。
振る舞い(behavior)
オブジェクトが持つもう1つの特性は振る舞い(behavior)である。これは、状態が変わった時にオブジェクトがどう振る舞うか、ということだと理解してもらえばいい。筆者の犬がオブジェクトだとした場合、見せる振る舞いはさまざまである。食べる、寝る、座る、立つ、転がる、死んだふりをする、静止する(これは郵便配達人が玄関に来ている時にはありそうもないが)、などである。オブジェクトに多くの状態があったのと同様に、振る舞いはたくさんある場合もあれば、1つだけのこともある。
Copyright © 2008 Ziff Davis Enterprise, Inc.
Originally appearing in the U.S. Edition of Dev Shed. All Rights Reserved.








