-
■コンストラクタのオーバーロードとは?
同じクラスの中に、コンストラクタを2つ以上定義することをコンストラクタのオーバーロード(多重定義)と呼んでいます。 コンストラクタをオーバーロードするには、引数の型・個数・順番が異なるようにする必要があります。
基本的にコンストラクタのオーバーロードもメソッドのオーバーロードも記述方法は同じですが、メソッドとは処理されるタイミングが異なりますので、実際に活用する場面は異なります。
■コンストラクタをオーバーロードする
では早速、複数のコンストラクタをオーバーロードしてみましょう。 以下のサンプルソースコードを実行してみてください。
サンプルソースコード class sampleA { public static void main(String args[]) { // コンストラクタ1 sampleB aaa = new sampleB(); // コンストラクタ2 sampleB bbb = new sampleB(1); // コンストラクタ3 sampleB ccc = new sampleB(1,1); // コンストラクタ4 sampleB ddd = new sampleB("3"); // メソッド aaa.method(); } } class sampleB { // コンストラクタ1 sampleB() { System.out.println("0"); } // コンストラクタ2 sampleB(int x) { System.out.println(x); } // コンストラクタ3 sampleB(int x, int y) { System.out.println(x + y); } // コンストラクタ4 sampleB(String str) { System.out.println(str); } // メソッド void method(){ System.out.println("method"); } }
実行結果として、上から「0、1、2、3、method」が出力されます。 上のサンプルプログラムは、引数が異なるコンストラクタが4つあります。 それぞれ、引数に応じて適切に処理されていることを確認できます。 サンプルプログラムのように、コンストラクタが状況(引数)に応じて処理することを、多様性(ポリモーフィズム)といいます。
» 次ページ「アクセス修飾子について」
トップページ » Java複数クラス入門 » コンストラクタのオーバーロードについて
-
-
- HTML/XHTML&スタイルシートレッスンブック
- 発売:2007/06/20
- 定価:2,604円
- 著者:エビスコム
- 出版:ソシム
内容:初心者の方におすすめしたい参考書籍です。 HTMLやCSSに関しても基礎的なことを、丁寧にとても分かりやすく説明しています。 Webページを作成する過程が、段階的に解説されているため、無理なくHTMLとCSSを習得できます。 - HTML/XHTML&スタイルシートレッスンブック
-
- プログラマが知るべき97のこと
- 発売:2010/12/18
- 定価:1,995円
- 著者:和田 卓人
- 出版:オライリージャパン
内容:世界中で活躍するプログラマによる97本のエッセイを収録した書籍です。プログラミングにおいてもっとも重要な事柄は何か、バージョン管理やテスティング、設計原則とコーディングテクニック、また腕を磨くための勉強法などについて、経験豊かなプログラマが自らの体験を踏まえて解説します。 - プログラマが知るべき97のこと
-
- Effective Java
- 発売:2008/11/27
- 定価:3,780円
- 著者:Joshua Bloch他
- 出版:ピアソンエデュケーション
内容:著者のGoogle, Sun Microsystemsにおけるソフトウェア開発で得た知識・経験をまとめています。Javaプログラミングをする全てのSE必読の書籍です。 - Effective Java
-
- 明解Java 入門編
- 発売:2007/08/08
- 定価:2,730円
- 著者:柴田 望洋
- 出版:ソフトバンククリエイティブ
内容:丁寧な解説と適切なサンプルプログラム248編と、豊富で分かりやすい図表278点で、Javaの基礎から学習できます。Javaプログラミング初心者におすすめの一冊です。 - 明解Java 入門編
-