catch-img

Javaのコンストラクタの使い方を初心者にも分かりやすく解説

Javaのコンストラクタは重要なメソッドの一つです。コンストラクタの意味や使い方を正しく理解し、Javaに対する理解を深めましょう。サンプルコードを用いながら、初心者にも分かりやすくコンストラクタについて解説します。

目次[非表示]

  1. 1.Javaのコンストラクタとは?
    1. 1.1.コンストラクタとは何か?
    2. 1.2.コンストラクタの役割
  2. 2.コンストラクタの使い方
    1. 2.1.コンストラクタの書き方
    2. 2.2.コンストラクタの呼び出し方
    3. 2.3.コンストラクタはnew演算子で呼び出す
    4. 2.4.引数の指定方法
  3. 3.thisの使い方も覚えよう
    1. 3.1.thisはどこで使う?
  4. 4.コンストラクタでインスタンスの初期値を設定

Javaのコンストラクタとは?

Javaを扱う上では「コンストラクタ」については必ず理解しておく必要があります。コンストラクタの持つ役割や意味について、まずは定義から学んでいきましょう。

コンストラクタとは何か?

コンストラクタとは、「クラス」(設計図)の処理を実行する「インスタンス」(実際に作ったモノ)が生成される際に実行されるメソッドで、主にクラスのメンバ変数を初期化する際に使われます。

コンストラクタは「new」の演算子を使って生成した場合に自動で呼び出されます。

コンストラクタの役割

コンストラクタは、そのオブジェクトが新しいオブジェクトを生成する際や、初期値の代入が必要なときに呼び出されるものです。

コンストラクタによってメンバ変数が初期化されることで、新しく生成したインスタンスのメンバ変数が必ず指定した値になっています。

  Javaのオブジェクトの概念を学ぼう。研修でつまづかないためにクラスや型などの要点解説 | Java・フロントエンド研修のジョブサポート Javaは「オブジェクト指向」のプログラミング言語です。Javaを学んでいくためには、「オブジェクトとは何か」を理解することが求められます。オブジェクトの概要をはじめ、クラス・型といったオブジェクトの要点について学んでいきましょう。 Java・フロントエンド研修のジョブサポート

通年開講プロエンジニアコース(Java研修1~3ヶ月)ー株式会社ジョブサポート

コンストラクタの使い方

コンストラクタを具体的にどのように使えば良いのでしょうか。サンプルコードと共に、使い方について学んでいきましょう。

コンストラクタの書き方

コンストラクタの書き方には、以下のルールを適用しなければなりません。

  1. コンストラクタはメソッドの名前とクラス名を同一にする
  2. 戻り値を記述しない

このルールを守った上で、Javaでは次のようにコンストラクタを記述します。

class クラス名{ クラス名(){ //インスタンスを生成する際に行う処理 } }
class クラス名{
 クラス名(){ //インスタンスを生成する際に行う処理 
 }
}

コンストラクタの呼び出し方

コンストラクタを呼び出す方法をコードと共に見ていきましょう。

class Constructortest {
 String str = "test case "; 
//コンストラクタに関する記述 
 public Constructortest(){ 
  System.out.println(str);
 }
}
// Main.javaに関する記述
public class Main { 
 public static void main(String[] args) {
//インスタンスの生成 
  Constructortest cs = new Constructortest(); 
 }
}

実行結果は以下のように表示されます。

test case

class Constructortestのインスタンスを生成する際に、コンストラクタが呼び出されるという形です。

コンストラクタはnew演算子で呼び出す

コンストラクタはnew演算子で呼び出す必要があります。

new コンストラクタを実行するコード;

new演算子の後に、クラスのコンストラクタを実行するコードを書くと、クラスのインスタンスが生成されます。これを「インスタンス化」と呼びます。

また、new演算子の構文は以下のようになります。

new クラス名();

この2つの記述は別の言い方をしていますが、同じことを表しています。コンストラクタでは、引数は必要によってその都度使い分けましょう。

引数の指定方法

引数を持つコンストラクタを指定する場合、new演算子でコンストラクタを生成する際にクラスに引数を指定します。

クラス名 変数名 = new クラス名(引数);
  Javaの研修についていけない初心者には丁寧に教える。その理由とは | Java・フロントエンド研修のジョブサポート Javaの研修は教えるべきことが多く、これまでプログラミングに触れてこなかった初心者の中には、研修についていけず脱落する人もでてきてしまいます。なぜ脱落してしまうのか、その原因を知り、研修で脱落者を出さないように対策しましょう。 Java・フロントエンド研修のジョブサポート

短期講座(Java入門5日・基礎10日)-株式会社ジョブサポート

thisの使い方も覚えよう

thisは、そのクラスフィールドの変数を呼び出す際に用いられます。

thisはどこで使う?

以下について見ていきましょう。

//Main.java
public class Main {
 public static void main(String[] args) {
  Animal Animal = new Animal();
  Animal.category = "Dog"; Animal1.today();
 }
}
//TodaysAnimal.java
class Animal {
 public String category;
 public void today() {
  System.out.println("今日の動物は" + this.category + "です"); 
 }
}

「this」はメソッドが呼ばれた際に、呼び出しているインスタンスに置き換えて用いられます。この場合「this」は「Animal」に置き換えられています。

「this」を使うことで、複数のインスタンスを生成したとしても、記述を簡単に済ませることが可能です。

public class Main {
 public static void main(String[] args) {
  Animal Animal1 = new Animal();  
  Animal1.category = "Dog"; Animal1.today();
  Animal Animal2 = new Animal();
  Animal2.category = "Cat";
  Animal2.today();
 }
}

例えばmainclassをこのように記述して複数のインスタンスを作成した場合、「this」はanimal1とanimal2の両方を置き換えることができます。

  オンライン・リモート講座(5日・10日)-Java・フロントエンド研修のジョブサポート オンライン・リモート講座(5日・10日)は、全国の中小企業~大手上場企業の未経験者、現役エンジニアまで幅広く受講。自学形式でJava、フロントエンド(HTML5 ・CSS・JavaScript)の講座を提供。Java・フロントエンド研修はジョブサポートにお任せください。 Java・フロントエンド研修のジョブサポート


コンストラクタでインスタンスの初期値を設定

コンストラクタはJavaを使ってコードを書く際によく使います。インスタンスの初期値を設定する重要なメソッドです。Javaを学習する上では重要なメソッドなので、記述する際のルールや使う場面を覚えておきましょう。

new演算子で呼び出す場合の構文や、thisの使い方とも組み合わせると、使い道が広がっていきますので、併せて学習を進めていきましょう。

法人研修の実績2500名以上!若手、新人エンジニア採用後

Java研修はジョブサポートお任せ下さい


ジョブサポートでは通年開講で貴社の希望開始日に合わせたJava研修(通学、オンライン・リモート講座)を行っています。助成金を活用すれば費用負担を軽減して研修受講ができるのため若手、新人エンジニア採用計画と合わせてご検討下さい。

新人・若手エンジニアの基礎知識、ビジネススキルを強化

プロエンジニア育成コース(Java研修1~3ヶ月)


メールマガジンの購読設定

ジョブサポートの最新情報をお届けするほか、

人事、採用教育担当者、若手エンジニア向けに

役立つ情報をお届けします。

アップロードしています。少々お待ちください。