言語
開発環境
Webアプリ/ミドル
データベース
OS/ネットワーク
ITスキル
海外サイト翻訳
書籍検索
用語検索
継承は、オブジェクト指向プログラミングの基本機能です。 クラスを別のクラスから派生するためのキーワードはextendsです。 この機能によって、プログラマは、既存のクラスをもとに新たにクラスを記述できます。 既存のクラスはスーパークラスと呼ばれ、新しいクラスはサブクラスと呼ばれます。
サブクラスはスーパークラスのメンバを継承するため、差分をコーディングするだけで、 スーパークラスの機能を持った新たなクラスを作成することが出来ます。 また、C++とは異なり、Javaでは単一継承のみ対応しています。 なので、Javaの場合は、直接2つ以上のクラスを継承することが出来ません。 ただし、あるクラスを基にサブクラスを生成し、さらにそのクラスを基に新しいサブクラスを生成するというように 階層構造での継承は許されています。
以下では、Javaの継承のサンプルプログラムを示しています。
/* 商品を表すスーパークラス
* Shouhin.java */
public class Shouhin
{
private String name; // 商品名
private int price; // 商品価格
/* 商品名の操作 */
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
/* 商品価格の操作 */
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
}
/* 食品を表すサブクラス
* Shokuhin.java */
public class Shokuhin extends Shouhin
{
private String shoumikigen;//賞味期限
/* 賞味期限の操作 */
public String getShoumikigen(){
return shoumikigen;
}
public void setSyoumikigen(String kigen){
shoumikigen = kigen;
}
}
/* 商品を表示するメインクラス
* ScreenOutputOfShouhin.java */
public class ScreenOutputOfShouhin
{
public static void main(String[] args){
/* Syouhinクラス(スーパークラス)を使う */
Shouhin A = new Shouhin();
A.setName("商品A");
A.setPrice(100);
System.out.println(
A.getName() + "は" +
A.getPrice() + "円です。"
);
/* Shokuhinクラス(サブクラス)を使う */
Shokuhin B = new Shokuhin();
B.setName("食品B");
B.setPrice(200);
B.setSyoumikigen("明日まで");
System.out.println(
B.getName() + "は" +
B.getPrice() + "円で賞味期限は" +
B.getShoumikigen() + "です。"
);
}
}
javac *.java
java ScreenOutputOfShouhin
Loarding…
グループサイト zealseeds zealseedsラーニング zealseedsブックス 名か字 名科辞典 幸福の木の育て方
Copyright (C) 2007-2011 zealseeds. All Rights Reserved.お問合せ