#3初心者学習用 Javaプログラム 「クラス」と「main」メソッド(デバッグ機能の解説付き)

 

はじめに

本記事では「クラス」と「mainメソッド」について解説します。

デバッグ機能の使い方も解説しています。

まずは、Java言語の命名規則について説明します。

命名規則」とは「クラス名※1」や「変数名※2」等を分かり易く統一するための一般的なルールです。

命名規則」は開発現場によって、独自に決められていることもあります。

Java命名規則は以下の通りです。

・すべてのUnicode文字を使用できる。ただ基本的には英数字や_(アンダーバー)を用いる。

・先頭文字に数字は使えない。

・文字数に制限はない。

予約語は使えない(予約語とはプログラムであらかじめ使用目的が定められている文字列)

 ↓JDK15の予約語一覧は下記URLから閲覧可能

docs.oracle.com※1「クラス名」については、本記事にて後述します。

※2「変数名」については、以下の記事にて解説しています。

porimon.hatenablog.com

 

「class」について

*** class Hello{

     ***

}

クラス名:「class」の後に任意のクラスの名前を記述する。

Javaのコードは「class」というブロックから成り立っている。この「class *** {」と「}」の間のブロックのことを「クラス」と呼ぶ。

※クラスの命名規則は以下のようになっています。

 ・1文字目は大文字

 ・それ以外は小文字だが、単語区切りは大文字

  例)TestPrint, BookStand

 

「アクセス修飾子」について

public class Hello{

    public static void main(String args){

      ***

   }

}

アクセス修飾子:public、protected、privateといった修飾子の総称で、クラスやメンバーがどこからアクセス可能であるかを決定します。

※アクセス修飾子については別の記事で詳しく説明します。今は、原則「class」や「mainメソッド」の前には「public」の記述が必要だと考えて下さい。

※メンバーについては別の記事で説明します。

※メソッドについては本記事で後述します。

 

「static」について

public class Hello{

    public static void main(String args){

      ***

   }

}

「static」がついているメソッドを「staticメソッド」と呼びます。

「staticメソッド」はインスタンスを生成しなくても呼び出せます。

「mainメソッド」(main(String args))はプログラムが実行されると最初に動く部分なので、インスタンス化を行うことができません。

そのため、「mainメソッド」は必ず「static」をつけておく必要があります。

※「インスタンス」については別の記事で説明します。

※「mainメソッド」については後述します。

 

「void」について

public class Hello{

    public static void main(String args){

      ***

   }

}

メソッドの戻り値が必要ないときに使う「型」の一つ。

メソッドの戻り値の「型」を指定することにより、システムのメンテナンス性が向上する。

mainメソッドの戻り値が「void」の理由は、スレッドのでの実行結果を戻り値にしたい場合、プログラム全体の戻り値があると、システムが正常に動作しない可能性があるからです。

※メソッド:一連の処理の集まり。原則、以下のような書式で記述します。

      [修飾子] 戻り値のデータ型 メソッド名(データ型 変数名){

                             メソッド内で実行する処理

                     }

※スレッドについては別の記事で説明します。

 

「mainメソッド」について

public class Hello{

    public static void main(String args){

      ***

   }

}

プログラムを実行する時に最初に呼び出されるメソッド。

(String args):「データ型」と「変数名」・・・mainメソッドに渡す引数の値を定めている。

String:文字列(複数の文字の集まり)を格納できる型。は配列を意味する。配列は同じデータ型の複数の値をまとめて管理できる。

args:変数名(任意)

※「データ型」と「変数名」については、別の記事で説明します。

 

「mainメソッド」の引数に渡した値の確認

eclipseデバッグ機能を使って、mainメソッドの引数(String args)に渡した値を確認します。

eclipseのインストール・設定をまだ実施していない方は下記の記事で説明しています。

porimon.hatenablog.com

eclipseでHello.javaというクラスファイルを作成し、下記のようなコードを記述します。

public class Hello{

    public static void main(String args){

      System.out.println("Hello");

   }

}

ブレークポイント(強制的にプログラムの実行を一時的に停止する箇所)を付けます。

mainメソッドの「{ と } の間」(ブロックと呼ぶ)の処理(System・・・)の行の「数字」の少し左側を「ダブルクリック」する。

※青い丸印がつけばokです。

f:id:porimon:20211020215238p:plain

 

javaファイルを右クリックする。

f:id:porimon:20211021012237p:plain

「Debug As」→「Debug Configurations・・・」を押下する。

f:id:porimon:20211021153206p:plain

「Main」タブの「Search」ボタンを押下する。

f:id:porimon:20211021165713p:plain

ブレークポイントを付けたクラス名を選択。(この場合は「Hello」)

f:id:porimon:20211021175224p:plain

「OK」ボタンを押下

f:id:porimon:20211021200528p:plain

「(x)=Arguments」タブを押下。

f:id:porimon:20211021205802p:plain

「Program arguments」入力欄に任意の文字列を入力。この場合「dog human」と入力している。(文字列の間に半角スペースを入れる。)

f:id:porimon:20211022121734p:plain

「Apply」ボタンを押下。

f:id:porimon:20211022124115p:plain

「Debug」ボタンを押下。

f:id:porimon:20211022133719p:plain

「Confirm Perspective Switch」ダイアログが出てきたら、「Switch」ボタンを押下。

f:id:porimon:20211022134737p:plain

「x=Variables」タブの「args」の左の矢印を押下。

※mainメソッドの引数である配列argsに値(dog human)が渡っていることが確認できる。

f:id:porimon:20211022150945p:plain

スポンサーリンク