TEDIA会員に登録したメールアドレスとパスワードを入力してください

メールアドレス:

     パスワード:


パスワードを忘れた方はパスワードの確認を行ってください。

TEDIA会員へのご登録がお済みで無い方はこちらで登録ができます


>> テクノロジーポータル TEDIA トップページへ戻る <<

Think IT Software Developer's Think IT Find-IT 失敗しないソフト選び Find-IT TEDIA テクノロジーポータル TEDIA インストールマニアックス2008 インストールマニアックス2008

TEDIA SponsorsOpen Source Web Development Tutorials - Dev Shed

Java入門:クラス
(2009/01/21公開)

Javaのクラス

 Javaについての前回の記事を書いてからしばらく時間がたってしまった。前回の記事は複雑な美で飾られていた(「複雑な美」の一例としては、ヒラリー・スワンクを挙げることができる。彼女の美しさは・・・そう複雑なものだ)。今回の連載では、クラスについて扱うことになっている。

 クラスやオブジェクトに関しては、拙筆のJavaとオブジェクト指向プログラミングに関する、「Java入門:オブジェクト指向プログラミング」でふれている。

オブジェクトとクラスとは?

 オブジェクトは状態と振る舞いから成っており、現実の世界でのオブジェクトのためのモデルとして通常使用される。オブジェクトの例としてフォードのトラックが挙げられる。その一方で、トラックのカテゴリをあらわすのがクラスだ。フォードのトラック、シボレーのトラック、ドッジのトラックなど、それぞれは特定の分野でほかとは異なるが、基本的にはすべてトラックのクラスの一部だ。そのため、すべてはトラックの基本的な同じ要素を共有している(例:4つのタイヤ、荷台など)。

 まずはクラス宣言の例を見てみよう。


public class BruceLee {
//We will give Bruce Lee three fields
public int punch;
public int kick;
public int roundhouse;
//We will provide one constructor for Bruce
public BruceLee(int usePunch, int useKick, int useRoundhouse) {
punch=usePunch;
kick=useKick;
roundhouse=useRoundhouse;
}
//We will give Bruce Lee three methods
public void setPunch (int someNewValue) {
punch = someNewValue;
}
public void setKick (int someNewValue) {
kick = someNewValue;
}
public void setRoundhouse (int someNewValue) {
roundhouse = someNewValue;
}
}



 BruceLeeクラスにPupilあるいはサブクラスがあるとした場合、サブクラスをこのように宣言できる:


public class Pupil extends BruceLee {
// We give Pupil one field
public int eyePoke;
//And one Constructor
public Pupil(int usePunch, int useKick, int useRoundhouse) {
flex(usePunch, useKick, useRoundhouse);
eyepoke=usePunch;
}
//And one method
public void finger(int someNewValue) {
eyepoke=somenewValue;
}
}



 この時点でまだ意味がよく分からなくても心配しなくてもいい。筆者もよく意味が分かっていないからだ。でもこのチュートリアルの最後までいけば、必ずはっきり理解できるようになることをお約束する。

 上の例では、サブクラスであるPupilがBruceLeeのすべてのフィールドを継承している。そして独自のフィールド(eyepoke)とそれを使うメソッド(finger)を加えている。


1    2    3    4    5    次のページ

Copyright © 2008 Ziff Davis Enterprise, Inc.
Originally appearing in the U.S. Edition of Dev Shed. All Rights Reserved.