Java
PR

Javaのクラスとは?書き方や呼び出し方をわかりやすく解説!

プログラミング
shin-memo
記事内に商品プロモーションを含む場合があります

Javaを学び始めたのだけど、クラスって何ですか?意味や書き方について教えて欲しい。

こんなお悩みにお答えします。

運営者:シン
運営者:シン
Profile
フリーランスエンジニア|大阪在住|30歳【保有資格】Java Gold・ITパスポート・SEO検定全級・全日本SEO協会認定SEOスペシャリスト【経歴】配送業▶︎販売員▶︎プログラミングスクールTECH CAMP受講▶︎プログラマー▶︎独立【発信内容】プログラミング・エンジニア転職・フリーランス
プロフィールを読む

この記事をお読みいただくことで、「Javaのクラスとは何か」「クラスの書き方」の理解が深まりますよ。

シン
シン

僕は現役Javaエンジニアで、大阪の受託開発企業で開発をしています。Javaの最難関資格も保有していますので、初心者の方にもわかりやすく解説しますね。

Javaは初心者には難しい言語と言われていますが、基礎を正しく身につければそこまで難しい言語ではありません。

ではみていきましょう!

Javaのクラスの概要

まずJavaのクラスの全体像を解説します。

  1. クラスとは
  2. クラスの書き方
  3. クラスの命名規則
  4. フィールドとは
  5. クラスとメソッドの違い

順に見ていきましょう。

クラスとは

クラスとは、プログラムの設計図のようなものです。

例えば何かものを作るときも設計図を書きますよね。身近にあるもので言えば、車やプラモデルなど。

Javaも、クラスという名の設計図を書き、その中にいろいろな機能を付け加えていきます。といわれても、まだイメージがつきにくいですよね。

クラスの書き方を次で解説します!

クラスの書き方

実際にJavaのクラスの書き方を見ていきましょう。Javaのクラスは下記のように記述します。

修飾子 class クラス名 {
 処理・・・
}
public class Main {

}

Mainの部分がクラス名です。

クラスの付け方には命名規則がありますので、次で見ていきましょう。

Javaのクラス名の命名規則

先程Mainというクラス名を付けましたが、クラスの名前には命名規則があります。

それが下記の通り。

  • 1文字目は大文字
  • 数字から始めることはできない
  • 2文字目以降は小文字
  • 単語が変わるごとに1文字目は大文字
  • 同一パッケージで同じクラス名はつけられない
  • 記号はドルマーク($)かアンダーバー(_)はOK
  • 予約語はNG
  • 文字数は無制限

1文字目は大文字で2文字目以降は小文字なので「Main」であればOKです。数字から始めることはできないので、たとえば「1Main」はNGです。単語が変わるごとに2文字目は大文字なので、たとえば「MainJapan」といった感じで「J」が大文字になります。

クラスの命名規則は、基本的に上記を覚えておけばOKです。

Javaのクラスのフィールドとは

フィールドとは、クラスの中に定義される、すべてのメソッドで使用することができる変数のことを言います。メンバ変数とも言われています。

では実際のコードを見てみましょう。フィールドの書き方の基本は下記の通り。

[アクセス修飾子] [データの型] 変数名;

クラスの中に記述してみましょう。

public class Test1 {
 public string str; //これがフィールド
}

上記の通りですね。

シン
シン

クラス名の直下に記載していますが、こうすることでtest1のメソッド内でも、クラスで定義した変数を使うことができます。

メソッド内に変数を書くと、そのメソッド内でのみ使用できます。

Javaのクラスとメソッド違い

クラスとメソッドの違いは一体なんでしょうか?

そもそもメソッドとは何かというと、処理をひとまとめにしたものです。たとえるなら「機能」というとわかりやすいかもしれません。

仮に「家」というクラスあったとすると、その家の中にある「テレビ」や「エアコン」といった家具家電がメソッドとなります。

このようにクラスとメソッドは明確に違います。

では実際にメソッドを書いてみましょう。

戻り値型 メソッド名(引数) {
 処理
}
public class House {
 
 public static void tv() {
 }

}

「House」というクラスの中に、「tv」というのがあります。このtvがメソッドです。

家(クラス)の中に、どんどん家具家電(メソッド)を追加していくことで、作りたいものを実現できます。

Javaのメソッドは以下の記事で詳しくまとめておりますので、ぜひ参考にしてみてください。

あわせて読みたい
Javaのメソッドとは?書き方や使い方をまとめてみた!
Javaのメソッドとは?書き方や使い方をまとめてみた!

Javaのクラスの呼び出し方

Javaのクラスで別のクラスを呼び出す方法について解説していきます。

呼び出し方

Javaは、場合によっては別のクラスを呼び出したい時があります。

別クラスを呼び出す方法は下記の通り。

class Test1 {
  public static void main(String[] args) {
    System.out.println("test1を実行");
    new Test2().test2(); //Test2クラスのtest2メソッドを呼び出す
    new Test3().test3(); //Test3クラスのtest3メソッドを呼び出す
  }
}
class Test2 {
  public void test2() {
   System.out.println("test2を実行");
  }
}
class Test3 {
  public void test3() {
   System.out.println("test3を実行");
  }
}

別のクラスを呼ぶときは、「new クラス名();」「new コンストラクタ名;」とすればOKです。別クラスのメソッドを呼ぶときは、「new クラス名().メソッド名();」OKです。

書き方は他にもありますが、ここでは上記を例に解説しました。

では実行してみましょう。

実行結果:

test1を実行
test2を実行
test3を実行

このように、Test1クラスから別クラスであるTest2クラスとTest3クラスを呼び出すことができました。

Javaのクラスのnew演算子とは

先程、別のクラスを呼び出す際に「new」がでてきましたが、なぜnewをする必要があるのでしょうか?newの役割は、クラスをインスタンス化(実体化)するために使います。

本記事の序盤でお伝えしたように、クラスとは設計図のようなものです。設計図のみではただの紙切れですよね。設計図をもとに家を作ったり車を作ったりしなければなりません。

そこでnewをして設計図をもとに実体化するということです。

Javaのクラスのインポートとは

Javaは別のパッケージにあるクラスを呼び出す際には、import文を記述しなければなりません。import文の書き方は以下の通り。

import パッケージ名 クラス名

importを理解するには、パッケージを理解する必要があるので、簡単に説明しますね。

パッケージとは、クラスを機能ごとにまとめる仕組みのことを言います。

たとえば、クラスは同じ名前を2つ以上つけることはできませんが、パッケージを分けることで、同じ名前をつけられるようになります。

大規模な開発になると、同一のクラス名を使うことがあるため、パッケージを分けておけば良いということです。

ではパッケージはどう書くかというと以下の通り。

package フォルダ階層名;

フォルダの階層名のところには、クラス名の手前までの名前を記述します。

仮にTest1クラスが「aフォルダ内のBフォルダ内のCフォルダ内」にあるとするならば、下記のように記載すればOkです。

package a.b.c;

class Test1 {
  public static void main(String[] args) {
    System.out.println("test1を実行");
  }
}

Test2クラスが「aフォルダ内のbフォルダ内のcフォルダ内のdフォルダ内」にある場合は以下の通り。

package a.b.c.d;

class Test2 {
  public void test2() {
   System.out.println("test2を実行");
  }
}

Test3クラスも同様に。

package a.b.c.d.e;

class Test3 {
  public void test3() {
   System.out.println("test3を実行");
  }
}

ではTest1クラス内でimport文を使って、Test2クラスとTest3クラスを呼んでみましょう。復習ですがimport文は以下のように書くのでしたね。

import パッケージ名 クラス名

ではTest2クラスとTest3クラスを呼んでみましょう。

package a.b.c;
import a.b.c.d.Test2;
import a.b.c.d.e.Test3;

class Test1 {
  public static void main(String[] args) {
    System.out.println("test1を実行");
    new Test2().test2();
    new Test3().test3();
  }
}
package a.b.c.d;

class Test2 {
  public void test2() {
   System.out.println("test2を実行");
  }
}
package a.b.c.d.e;

class Test3 {
  public void test3() {
   System.out.println("test3を実行");
  }
}

上記の通り。

import文は開発環境によっては、別のクラスを記述した際に自動的に入力される場合もありますが、書き方は覚えておきましょう。

あと同じパッケージ内にあるクラスは、import文は不要です。

Javaのクラス:まとめ

Javaのクラスの基本について解説しました。

本記事で解説したクラスの基本を押さえておけば、実務のプログラミングでも必ず役立ちます。ぜひ繰り返し読んで覚えてみてくださいね。

以下の記事では、Javaエンジニアのための学習ロードマップを解説していますので、あわせて読んでみてください。

あわせて読みたい
Javaエンジニアの学習ロードマップ!実践で使える技術を厳選【2023年版】
Javaエンジニアの学習ロードマップ!実践で使える技術を厳選【2023年版】
運営者情報
運営者:シン
運営者:シン
フリーランスエンジニア|大阪在住|30歳【保有資格】Java Gold・ITパスポート・SEO検定全級・全日本SEO協会認定SEOスペシャリスト【経歴】配送業▶︎販売員▶︎プログラミングスクールTECH CAMP受講▶︎プログラマー▶︎独立【発信内容】プログラミング・エンジニア転職・フリーランス
記事URLをコピーしました