1
0

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.

「Hello World」を出力するコードが分からない4年目エンジニア

Last updated at Posted at 2023-11-17

エンジニア4年目にしてJavaをまともに勉強したことのない筆者です。
自社開発でJavaを使うことになったので勉強していますが、さっそく壁にぶつかったのでまとめてみました!

1.「Hello World」出力じゃ!!

PHPでHello World出力しよーっと
うん!見てわかるぞ!以前PHPを使った仕事してたからね!

php
<!DOCTYPE html>
<html>
<body>

<?php
echo "Hello World";
?>

</body>
</html>

次はJavaだ!

java
    public class Main {
      public static void main(String[] args) {
        System.out.println("Hello World");
      }
    }

いやいやいや長いて。
書いてあることからよくわからんし。
System~~~~の部分で出力するのは分かるけども。

初めてみるJavaのコードは呪文だったのでひとつひとつ解いてみるのが最初の勉強でした。

1.1. public class Main

まずこれについて解剖します。

java
    public class Main{}

まあ流石に分かります。
Mainクラスを作成していて、アクセス修飾子のpublicを付けています。
publicを付けることですべてのクラスからアクセスできます。

どっからでもインスタンス化してやるぜ!

ここはオブジェクト指向の部分なので大丈夫です。
問題は次からですね。

1.2. static

static????
なんか見覚えがあります。

勉強してみるとやっぱり見覚えがありま。っていうかPHPにもありました。
(全然使ってないので覚えてなかった。。。)

staticを付けることでクラスをインスタンス化せずに関数、変数などを使用することができます。
↓例

java
public class Main {
  static void myStaticMethod() {
    System.out.println("Staticだよ");
  }

  public static void main(String[] args) {
    myStaticMethod(); // 関数呼び出し
  }
}

Mainクラスをインスタンス化する前にmyStaticMethod()を呼び出し実行できます。

ぱっとみ呪文ですが一つ一つに分けてみてみると苦手意識が薄まりますね。

1.3. void

これが一番見たことない!
また調べてしてみよう。

返り値が無い関数に付けるらしいぞ。
ほんまかいな。void削除して実行してみよう。

Main.java:2: error: invalid method declaration; return type required
public static main(String[] args) {
^
1 error

めちゃめちゃ怒られました。

voidなんて使ったことないので新鮮です。しっかり覚えとこ。

1.3. String[] args

main関数の引数よな。

java
//文字列の配列
String[]
//引数の名前
args

Javaを動かすにあたって最初に実行する関数に引数があるのは何か引っかかります。
ついでに調べてみましょう。

↓の記事を参考にしました。大変勉強になりました。投稿者さんありがとうございます。

String[] argsは、プログラム起動時に指定する値(コマンドライン引数)です。

なるほど!というか冷静に考えるとそりゃそうかですね。
もし任意の二つの数字を足し算するプログラムがあった場合その数字を受け取るためですね。

java
public class Main {
    public static void main(String[] args) {
        // コマンドライン引数から数字を取得
        // ここで必要!!!!
        double num1 = Double.parseDouble(args[0]);
        double num2 = Double.parseDouble(args[1]);

        // 足し算の結果を計算
        double sum = num1 + num2;

        // 結果を出力
        System.out.println("Sum of " + num1 + " and " + num2 + " is: " + sum);
    }
}

4. 終わりに

そういえば学生時代このコードを見て嫌になった思い出があります。
当時と違ってほかの言語を身に付けており、耐性があったので理解することができました。

最初から難しそうな雰囲気プンプンですがJavaの勉強に勤しんでいきます!

5. 予告

12月1日に投稿予定です!
これからもJavaについてガンガン投稿する予定です!

これからは小出しにしていくぞ!
(アンドリュー・ワイルズか!!)

1
0
1

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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?