いまから始めるアルゴリズム

新人編集者のJava学習物語 初級編

第3回 人間が「もの」ってどういうこと?

荒井亜子
2008/1/11

オブジェクトの生成

先生

野菜ジュースのクラスができたらオブジェクトを生成してみましょう。どんな図になるかをイメージしてみてください

荒井

オブジェクトは実体だから、商品名や商品番号が違ういろいろな野菜ジュースができるってことだよね

先生

そうですね。図1のジュースのボトルの絵がオブジェクトのイメージです

荒井

オブジェクトの生成は、図にすると分かるんだけど、ソースコードではどう書くの?

先生

クラスからオブジェクトを生成するときは、newキーワードを使います


YasaiJuice yj;
yj = new YasaiJuice();

もしくは 

YasaiJuice yj = new YasaiJuice();
 |    |
クラス名 参照変数名
ソースコード2 YasaiJuiceクラスのオブジェクトを生成

ソースコード2 YasaiJuiceクラスのオブジェクトを生成


sinjinjava03_02
図2 野菜ジュースオブジェクトの図(生成したオブジェクトに値を設定した例)

先生

また、ソースコード1の中で、メソッドの定義がなされていますが、メソッドの定義方法は以下のとおりです


メソッドの定義方法

[修飾子] 戻り値の型 メソッド名(引数リスト){
}


荒井

ソースコード1のメソッドは、商品名を得るためのメソッドなんだね

変数もいろいろ

先生

変数は宣言する場所で有効な範囲が変わります



class Kyuyo{

   // syoninkyuはクラスに直接宣言されているインスタンス変数
   private int syoninkyu = 20; 
   public int getMoney(){ // メソッドの定義
      int increase = 10; // increaseはローカル変数
      syoninkyu += increase;
      return syoninkyu;
   }

}

ソースコード3 1年ごとに10万円ずつ昇給する夢のような給与プログラムの一部


先生 ソースコード3のincreaseは、ローカル変数と呼びます。ローカル変数は、クラス内にあるメソッドの中で宣言する変数です。メソッドの処理が終わると消えます
荒井 ローカル変数には寿命があるんだね
先生

ローカル変数(ソースコード3のincrease)は、中カッコ内が実行中の間だけ有効で、この中カッコを抜けると内容は消えます。因みに、ソースコード3のsyoninkyuがインスタンス変数です。オブジェクトの中でデータを格納する領域を確保し、対象となるオブジェクトがなくなると消えます

荒井

まとめると、

クラスの直下に直接宣言するのがインスタンス変数
メソッドの直下に宣言する変数がローカル変数

ですね

先生 オブジェクト指向の範囲に入ったことで、参照変数、ローカル変数、インスタンス変数など覚える変数も多くなりました
荒井 いろんな変数があって、ややこしい。それより先生! さっきコーヒーを飲みすぎて、トイレが我慢の限界です。続きはまた後でお願いします
先生 分かりました(笑)。次回は、メソッドの続きから学びましょう。いってらっしゃい!
荒井

ひょえ〜

授業そっちのけでトイレにひた走る新人編集者。いま覚えた知識も流れてしまわないといいのだが。(連載第4回へつづく)

今回お世話になった富士通ラーニングメディアの講師、吉田有沙先生より、プログラミング入門者へのアドバイス

オブジェクト指向は概念をよく理解しよう

 オブジェクト指向はシステム化したい現実世界の内容をオブジェクト(もの)という単位でモデル化する考え方です。

 Java言語はクラスとオブジェクトという概念でオブジェクト指向プログラミングを実現します。例えば給与計算システムであれば「会社」「従業員」「振込口座」などのクラスを定義し、クラスから生成したオブジェクトを操作します。

 Javaをこれから始める皆さんは、クラスとオブジェクトの概念をよく理解しておくとその後の学習が楽になるでしょう。


 

今回のインデックス
 クラスとオブジェクトが何かを理解する (1ページ)
 インスタンス変数とローカル変数との違いとは? (2ページ)

@IT自分戦略研究所の関連記事
では、Javaをどうやって覚える?
オブジェクト指向、本当に分かってる?
Javaの世界、イメージできる?
なぜJavaを学ぶのか
Javaをモノから学ぶ

@IT自分戦略研究所の関連サービス
ITトレメ(Sun Certified Programmer for the Java 2 Platform)

自分戦略研究所、フォーラム化のお知らせ

@IT自分戦略研究所は2014年2月、@ITのフォーラムになりました。

現在ご覧いただいている記事は、既掲載記事をアーカイブ化したものです。新着記事は、 新しくなったトップページよりご覧ください。

これからも、@IT自分戦略研究所をよろしくお願いいたします。