1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

JAVAの命名規則について

Last updated at Posted at 2022-10-30

こんにちは。
現在JAVAを独学で勉強中で、気づいたことがあったので、同じところでつまづかない人が出ないようにとメモを残しておくことにしました。

結論から言うと、クラス名をファイル名(拡張子を除く)と同じ名前にしないとコンパイルエラーが出ました。
そのプロセスのお話になります。

目次

1. 動作環境
2. 例文
3. 検証手順
4. 検証結果
5. 検証結果からの考察
6. 結論

1. 動作環境

✔️cloud9
✔️Linux
✔️JAVA"11.0.2"

2. 例文

JAVAの構文.java
public class クラス名{
 public class void main(String... args){
  処理内容
 }
}

上記構文に従って、

PracticeScript.java
public class PracticeScript{
 public class void main(String... args){
  System.out.println("こんにちは");
 }
}
PracticeScript2.java
public class Sample{
 public class void main(String... arg){
  System.out.println("こんにちは");
 }
}

このようなファイル名のものを用意し、class名を、ファイル名と同名、もしくは別の名前で用意しました。

3. 検証手順

ターミナルにて、linuxコマンドのtouchコマンドでファイルを用意

検証対象となる二つのファイルに、クラス名以外は同じ条件でコーディング

javacコマンドで二つのjavaファイルをコンパイル

一つはコンパイル成功、クラス名が違うファイルのコンパイルは失敗
成功した方は.classファイルが作られる

コンパイルに成功したファイルのみjavaコマンドで実行⇨ターミナルに出力結果が表示される

4. 検証結果

ターミナルに何も表示されなければ、コンパイルは成功し、.classの拡張子のファイルが作られます。
クラス名とファイル名(拡張子を除く)が違うものをコンパイルしようとしたら、コンパイルエラーとなりました。

5. 検証結果からの考察

コンピュータは0と1の概念しか持たないので、プログラミング言語を理解できません。 コンピュータでプログラムを実行する前に、コンピュータがわかるように0と1に変換する工程が必要で、 その工程がコンパイルと言います。 javac ファイル名.javaでファイル名を参照し、コンパイルを実行し、.classファイルが作られます。このクラス名を作る時、どの処理をコンパイルすれば良いか判断するものとして、頭のclass名を参照しているものだと認識しています。(誤っていたらすみません。)

6. 結論

クラス名とファイル名(拡張子を除く)は一緒にしましょう。
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?