0
0

More than 1 year has passed since last update.

/*Java入門*/ Hello Worldをプリントすることから見るJava言語の基本特徴

Last updated at Posted at 2021-12-30

JavaでHello Worldをプリントする

ソースコード:

HelloWorld.java
public class HelloWorld { // クラス名とソースコードファイル名は同名とする
    public static void main(String[] args) { // Javaはmainメソッドをプログラムの起点とする
        System.out.println("Hello World!"); // 標準出力はSystem.outで表現される
    }
}

実行結果:

% javac HelloWorld.java # クラスファイルにコンパイラ
% java HelloWorld # クラスファイルを解釈し実行
Hello World!

この例から見るJavaの基本特徴

完全にオブジェクト指向(object-oriented)

Javaはオブジェクト指向を前提としたプログラミング言語で、手続き型プログラミング(procedural programming)をサポートしないです。
=> Javaはすべての処理にクラスが必要です。
=> Hello Worldをプリントすることだけでもあるクラスに含めないといけないです。

同じくオブジェクト指向言語であるC++は、手続き型プログラミングもサポートしているのでクラスなしでHello Worldをプリントすることができます:

hello.cpp
#include<iostream>

int main() { // C++もmainメソッドをプログラムの起点とする
    std::cout << "Hello World!" << std::endl; // C++はcin, coutでデータを入出力する
    return 0;
}

実行結果:

% g++ hello.cpp -o hey # 実行ファイルにコンパイラ
% ./hey # 実行ファイルを実行
Hello World!

プラットフォーム非依存(platform-independent) / Write Once Run Anywhere

Java言語はコンパイラ(compiler)とインタプリタ(interpreter)両者をサポートしています。
Javaプログラムを作成して実行するまでの流れは以下になります:

  1. ソースコード(.javaファイル)を作成する
  2. Javaコンパイラ(javac)でコンパイルしてクラスファイル(.classファウル)を生成する
  3. インタプリタ(JVM, Java Virtual Machine)でクラスファイルを解釈して実行する

ここのクラスファイルはバイトコード(byte code)で、OSに依存しなくてどこでも実行できる特性を持っています。

0
0
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
0
0