今さら聞けない!Javaとは 【初心者向け】
初心者向けにJavaとはどんな言語なのかについて詳しく解説しています。Javaに興味はあるけど使った事はないという人は、Javaが人気な理由など理解できるはずです。他のプログラミング言語とも比較しているのでぜひご覧ください。
TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。
「Javaとは聞いた事があるけど何が便利なのか分からない」といった初心者の方向けにJavaについて詳しく見ていきます。Javaはプログラミング言語の中でも人気な言語ですので、使えるようになれば仕事も多く手に入るはずです。
これからJavaを勉強しようと思っている方はぜひ参考にしてみてください。
なお本記事は、TechAcademyのJava講座の内容をもとに作成しています。

田島メンター!!今日はJavaについて教えてください!

JavaはC言語の構文を主に引き継いだプログラミング言語だよ。様々な環境で実行が可能だけれども、今だとAndroidアプリとかに使われていることが多いんじゃないかな。

へー!

他にもいくつかの特徴があるので、実際にひとつずつ見てみよう。
目次
Javaとは
Javaとはプログラミング言語の1つです。 世界的に見ても使用されている言語、習得したい言語として1位を記録するほどに期待度の高い言語です。
なぜ、ここまで人気が高いのかを説明すると、「Javaは多くの現場で使われていること」、「汎用的でOSに依存しない」などの理由がある。 OSに依存しないという点は大きく、作成したソフトが動く環境を考えるというのはプログラマーにとって大変な問題です。
OSXなのかWindowsなのかでさえもとても重要な問題です。 そんな中でも動くプラットフォームを多く提供してくれるJavaという言語は人気が高いといえるでしょう。
また、様々な言語のもとになっているという点でもJavaはその点でも優れているともいえるでしょう。
開発にはJDK(Java Development Kit)を使用します。これはJavaの公式サイトから無料でダウンロードすることができます。
Javaでどんなことができるか
JavaはOSに依存をしないことからどんな環境でもソフトを動かすことができます。
例えば、今はもう見なくなってきたガラパゴス携帯(ガラケー)でもJavaを使ったアプリケーションを組むことができます。 また、Javaはサーバーサイドでも活躍しています。
サーバーサイドとはサーバー側で動くアプリケーションのことで、Web上のアプリケーションなどが良い例だと思います。 そのような意味ではJavaはWebとも相性が良く、総じていえばどんなものにも搭載されているマルチな言語であるという事ができるでしょう。
また、Oracleの公式サイトでも紹介されていますが、有名ゲームMinecraftもJavaによって作成されています。
Javaを使うためにはインストールする必要がありますので、インストール方法も合わせてご覧ください。
※Javaの開発はWindows・Mac・Linuxいずれからでも行うことができます。
Javaを使うメリット
処理速度が速い
Javaは、起動にコンパイルを必要とするコンパイラ言語であるためRubyやPHP, Pythonといった言語よりも処理速度が速いのが特徴です。
プラットフォームに依存しない
OSに関係なく、Windows, iOS, Linuxで動作させることができる言語です。
オブジェクト指向である
プログラムの管理を細かく行うことができるので、複数人で同じものを開発するときなど作業効率が上がるでしょう。
Javaによるデメリット
プログラミング以外の作業が面倒
Javaはプログラムを実行するためにコンパイルという作業をするなどWebアプリケーションを起動する時間がかかります。
JavaはEclipseという環境で使われることが多い言語ですが、事前準備や開発環境を整える作業が多くなるでしょう。
学習環境が少ない
if文などの文法は独学でも学習することができますが、実践的にアプリケーションを作る環境はなかなかありません。企業もRubyやPHPといった言語を使うところが増えているので、身近で教えてくれる人もなかなか見つからないかもしれません。
Javaの書き方
Javaとはオブジェクト指向という方法で書かれた言語系です。 似たものの中に、C#やRubyなどがあり、classを使った書き方です。
プログラムを小さな部品の様に分けていくプログラムの書き方をします。 これがオブジェクト指向型と言います。
Javaはオブジェクト指向型のプログラミングをするという事を覚えておきましょう。 上記にあげたように、Javaは世界的に見ても有名な言語で世界で書けるという方は多くいます。 これから勉強するという方はぜひ習得に励んでみてください。
クラスとは
Javaではクラスと呼ばれるデータと処理をひとつにまとめたものを部品のように組み立てて開発を行います。
このときデータのことをフィールド、処理のことをメソッドと呼び、これらをまとめてクラスのメンバと呼びます。
クラスは設計図のようなものであり、そのままでは使用できないためそれをもとにオブジェクトという実際のデータを生成します。このことをインスタンス化と呼びます。

オブジェクト指向というのがJavaの大きな特徴のひとつだよ。プログラムを部品に分けて、それらを組み合わせて構成していくんだ。

クラスとかオブジェクトとか、色々複雑そうですね……

しかしそれによってより高度な開発を行うことができるようになっているともいえるね。次にJavaのファイルについての説明をしよう。
Javaを実行するまでの手順
Javaが実行される大まかな流れです。
|
ソースプログラム(拡張子.javaのファイル)の作成
まず簡単な文字列を出力するファイル”Test.java”があるとします。これをソースプログラムといいます。
Test.java
class Test{ public static void main(String[] args){ System.out.println("aaabbbccc"); } }
ソースプログラムをコンパイルする:クラスファイル(拡張子.class)の作成
このファイルをJava仮想マシン(Java virtual machine、Java VM、JVM)で実行できるファイルに変換します。これをコンパイルといいます。
コンパイルはターミナルでソースプログラムのある場所に移動し、以下のコマンドを入力することで実行されます。
javac ソールプログラムのファイル名.java
今回の場合は”Test.java”となります。ここでは拡張子がないとエラーとなります。
コンパイルが完了すると、.classという拡張子で同じ名前のファイルがソースプログラムと同ディレクトリ内に作成されます。これをクラスファイルといいます。
ソースプログラムのあるフォルダを見ると”Test.class”というファイルが新たに作成されているのが分かります。
クラスファイルの実行
最後にこのクラスファイルを実行します。以下のコマンドをターミナルで入力します。
java クラス名(ファイル名)
今回の場合はTestを入力します。※ここでは拡張子.javaは入力しません。
文字列がターミナルに出力されました。
コンパイラに使用するjavac(Javaのcompiler)、クラスファイルの実行に必要なjavaコマンドはいずれも前述のJDK(Java Development Kit)をインストールすることで使用することができます。
Javaの基本構文
Javaなどプログラミングでよく使う構文についていくつか紹介していきます。
これからプログラミングをしていく中で毎回のように出てくる基礎的な内容なので、今後のために書き方を覚えておきましょう。
if文
if文は、「もし◯◯したら〜する」といった条件分岐を作るのに使用する便利な構文です。
if(sample1 && sample2){ //sample1とsample2がどちらもtrueだった場合の処理 System.out.println("sample1とsample2はどちらもtrueです"); }
for文
for文は、繰り返し処理をする際に使用します。例えば1~100までの数字を1つずつ手動で足していくのは面倒ですが、for文を使えば一瞬で処理が完了します。
for($i = 1; $i < 10; $i++ ){ //行う処理の繰り返し }
- 「$i」は、数値や文字を入れる変数と呼ばれる箱
- 「$i = 1;」は、箱に1という数値を代入
- 「$ < 10;」は、10未満までの間繰り返し処理を行う
- 「$i++」は、繰り返し処理が終わったら$iを1つずつ増やしていく
上記のような流れで、$1の数値が10未満まで繰り返し処理が行われるといった内容にいます。
今はまだ、何をやっているか分からないかもしれませんが学習を進めていく中で理解できるポイントが来ます。ぜひ自分でも書いてみましょう。
以上、Javaとはどんなプログラミング言語なのか紹介しました。
Webやスマホアプリなど様々なシチュエーションで使う言語なので、Javaをマスターすれば仕事には困らないはずです。
またJavaを勉強しておくと、ほかのオブジェクト指向の言語を習得しやすくなるかと思います。 なんでもできるJavaの世界を楽しんでいきましょう。

拡張子.javaのソースプログラムを作成し、それをコンパイルして拡張子.classのクラスファイルを作る。最後にjavaコマンドでそれを実行するんだ。

javaコマンドでは拡張子が必要なかったり、ここでも何かと間違いそうですね。

簡単なテキストを出力するコードなどで、これら一連の動作がしっかり行えるか確認してみよう。

まず実行できる環境を作るのが大事ですね。ありがとうございました!
入門向けのJava学習サイトも紹介しているので、合わせてご覧ください。
また、オンラインのプログラミングスクールTechAcademyでは、Java講座を開催しています。
JavaやServletの技術を使ってWebアプリケーションの開発を学ぶことができます。
現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間で習得することが可能です。
また、現役エンジニアから学べる無料のプログラミング体験会も実施しているので、ぜひ参加してみてください。