TOPシステム開発> プログラムを作成する
はじめてのJava
はじめてのJava入門

第3回:オブジェクト指向への第一歩を踏み出そう

著者:サイオステクノロジー  片桐 一宗   2007/9/6
1   2  3  次のページ
オブジェクト指向と手続き指向

   「第2回:何はなくともまずクラス」では、簡単なJavaプログラムを作成してオブジェクト指向に触れました。今回もオブジェクト指向についてもう少し掘り下げて解説していきましょう。

   まず、手続き指向と比較することでオブジェクト指向の特長はどのようなものなのかを説明します。プログラミング言語で言うと、C言語は手続き指向言語、Java言語はオブジェクト指向言語という位置付けになります。
手続き指向の場合
  • メインルーチンからサブルーチンを呼び出すことで処理が進む
  • 引数と返り値を持つ「関数」を組み合わせることによってシステムが構成される
  • 「どの関数が必要か」という観点で設計する
  • データは構造体のように関数とは異なるもので管理している
オブジェクト指向の場合
  • オブジェクト同士が結びつく(メソッドを呼び出す)ことで処理が進む
  • 「オブジェクト」を組み合わせることによってシステムを構成する
  • 「どのオブジェクトが必要か」という観点で設計する
  • データもオブジェクトとして扱われる

表1:オブジェクト指向と手続き指向の比較

   結局はデータと関数がどのように管理されているかの違いだけといえるかもしれません。手続き指向はフラットに存在する関数とデータを使用するのに対し、オブジェクト指向は関数とデータを「オブジェクトを介する」ことで使用しているのです。

オブジェクト指向の基本要素

   次にオブジェクト指向の理解を深めるために、5つある基本的な構成要素の説明をします。

  • オブジェクト
  • クラス
  • インスタンス
  • メッセージ
  • インターフェース

表2:基本的な構成要素


オブジェクト

   オブジェクトとは実世界に存在するものごとの概念のことで、世の中に存在する名詞で表現できるほとんどのものはオブジェクトになります。オブジェクトは「状態(データ)」と、引数と返り値を有する「振る舞い(メソッド)」を持ちます。


クラス

   クラスとはオブジェクトの設計書や雛形のことであり、オブジェクトが持つ状態や振る舞いを定義します。Javaでプログラミングをするということは「クラスを定義すること」です。


インスタンス

   インスタンスはクラスを基にメモリ上に生成された実体のことで、実際にデータを持って処理を行います。Javaプログラムではnewキーワードを使うことで、インスタンスを生成します。


メッセージ

   メッセージはオブジェクトの振る舞いを呼び出すことです。


インターフェース

   インターフェースはオブジェクトの振る舞いを定義するものです。振る舞いは複数個定義することができますが、インターフェースを実現(実装)するオブジェクトはすべての振る舞いを定義しなくてはなりません。またstaticメソッドは定義することができません。

1   2  3  次のページ


株式会社システムインテグレータ 安治
著者プロフィール
サイオステクノロジー株式会社  片桐 一宗
ソフトハウスでC、C++、Javaでの開発経験を積み、テンアートニ(現サイオステクノロジー)入社。Webシステムの設計・開発・保守からプロジェクトリーダーまでこなした後、現在、品質管理チームの一員を担当。サイオステクノロジーのシステム構築サービス品質向上に向け、日々奮闘中。


INDEX
第3回:オブジェクト指向への第一歩を踏み出そう
オブジェクト指向と手続き指向
  オブジェクト指向の基本概念
  UML