アットウィキロゴ

いろいろなコンストラクタ

★いろいろなコンストラクタ★
 
■デフォルトのコンストラクタ
デフォルトコンストラクタ…コンストラクタを記述しなければ自動的に引数なしのコンストラクタが用意される
■コピーコンストラクタ
コピーコンストラクタ同じクラスのオブジェクト引数に受け取り、対応するフィールドに値を代入する。受け取ったオブジェクトを複製する
 
class Book {
     :
     :
 Book(Book copy) {
title = copy.title;
writer = copy.title;
price = copy.price;
}             ←コピーコンストラクタ
    :
    :
}
 
class Books {
Book book2 = new Book(book1);
     :
}
 

 ■サンプルプログラム

class Book {
  String title;
  String writer;

  Book(String t,String w){
    title = t;
    writer = w;
  }

  Book(Book copy){
    title = copy.title;
    writer = copy.writer;
  }

  void print() {
    System.out.println("タイトル:"+ title);
    System.out.println("著  者:"+ writer);
  }
}

class Books {
  public static void main(String[] args){
   Book book1 = new Book("Cの絵本","アンク");
   book1.print();
   Book book2 = new Book(book1);
   book2.title = "javaの絵本";
   book2.print();
  }
}

 

※コンストラクタもオーバーロードできる。

最終更新:2008年03月05日 23:27