Javaを理解しよう! 基本情報技術者試験の午後問題対策を解説!

Javaを理解しよう

基本情報技術者試験の午後問題ではプログラミング言語問題が出題されます。プログラミング経験がない場合、この問題が基本情報技術者試験の最大の難関となるでしょう。

プログラミング言語問題はいくつかの言語から選択できるため、自分に合った言語を選ぶことがポイントとなります。

この記事では、基本情報技術者試験における言語選択の助けになるように、Javaの特徴や用途などの基本事項や、Javaの基本的な構文についての解説を行います。

目次

Javaとは

まず初めに、Javaの概要について解説します。

Javaの特徴

Javaは1996年にサン・マイクロシステムズ社によってリリースされ、現在はサン・マイクロシステムズ社の後継企業であるオラクル社が管理しています。ソースコードをコンパイルして利用するコンパイラ型の言語であり、現代のプログラミングの標準となっているオブジェクト指向を採用しています。

その使い勝手の良さや、どのプラットフォームでも動作するマルチプラットフォームという特性により、多数の業務システムに利用されている言語です。

Javaの用途

Javaは主に企業の業務システムの開発や、Web系の開発などで用いられています。古い業務システムをレガシーマイグレーションする際にJavaが利用されるケースが多く、多数の採用例がある言語です。

Web開発との親和性の高さなどから、現在主流となっているWebアプリケーションの開発でも活用できます。また、大規模プロジェクトでも利用できることや、ライブラリが豊富であり機能拡張しやすいこともメリットとなっています。

Javaの将来性と学ぶメリット

Javaは現代において最も需要が高いプログラミング言語といえるでしょう。システムエンジニアを目指すのであれば、Javaを学ぶことで多くの求人に応募できるようになるメリットがあります。

また、Javaはプログラミング言語の中でも理解がしやすいという特徴があります。プログラミングを初めて行う方にもおすすめしやすい言語といえるでしょう。

Javaの基本構文

以下では、Javaの基本構文について解説します。

Javaでは、ソースコードの拡張子を「.java」とします。また、ファイル名は必ずクラス名とし、プログラムの中には必ずファイル名と同じクラスを作成します。

また、クラスの中にはプログラムの開始地点としてmainメソッドを記載します。プログラムはこのmainメソッドから開始します。

ファイル名:Hello.java

// ファイル名と同じクラスを作成する
class Hello
{

  // クラスの中にmainメソッドを指定する
  public static void main(String[] args)
  {
      System.out.println("Hello World!!");
  }
}

文字出力

Javaでは、printlnメソッドを用いて文字出力を行います。なお、Javaでは文字列であることを示すためにダブルクオーテーションで文字を囲います。

ファイル名:Text.java

// ファイル名と同じクラスを作成する
class Text
{
  public static void main(String[] args)
  {
      System.out.println("文字出力のテストです");
  }
}

変数処理

Javaでは、型を指定して任意の名称で変数を宣言し、利用することができます。Javaの型には、整数を扱うintや、小数点以下も扱えるdouble、文字列を扱うStringなどが存在します。

ファイル名:Human.java

// ファイル名と同じクラスを作成する
class Human
{
    public static void main(String[] args)
  {
      int years_old = 35;
      double height = 180.5;
  }
}

配列

配列を用いると、複数の変数をまとめて扱うことができます。

Javaでは変数の型名に[]を付与して変数を宣言したうえで、newを用いることで配列を作成することができます。配列の各要素は、変数名[〇]のような形で指定することができます。

以下では、int型の配列を作成するケースを記載します。

ファイル名:Numbers.java

class Numbers
{
  public static void main(String[] args)
  {
  int[] numbers = new int[3]; // 長さ3の配列を指定
  numbers[0] = 12; // 配列の1つ目の要素を指定
  numbers[1] = 34;
  numbers[2] = 56;

  }
}

条件分岐

Javaでは、if文とelse文で条件分岐を行うことができます。

if文のカッコ内には、条件分岐のための条件を指定します。この条件に当てはまる場合はすぐ下の中カッコ内の処理を、当て当てはまらない場合はelse文の処理を実施します。

ファイル名:OtonaCheker.java

class OtonaCheker
{
  public static void main(String[] args)
  {
  int years_old = 35;

  if (years_old < 20)
  {
      System.out.println (“子供です”);
  } else {
      System.out.println (“大人です”);
  }
 }
}

繰り返し処理

Javaでは、for文で繰り返し処理を行うことができます。for文の中には、3つの要素を指定します。

最初の要素は、繰り返し処理内で利用するカウンタ用変数の初期化です。以下の例では変数iを0に初期化しています。

2つ目の要素は、繰り返し処理を継続する条件の指定です。以下の例では変数iが年齢を超えない限り処理を継続するように指定しています。

3つ目の要素は、1回の処理ごとに行う処理を記述します。以下の例文では、1回処理が終わるごとにiに1を加算するようにしています。

ファイル名:Setsubun.java

class Setsubun
{
  public static void main(String[] args)
  {
  int years_old = 35;

  // 年齢の数だけ豆を食べます
  for (int i=0; i<years_old; i++)
    {
        System.out.println(“豆を食べます”);
    }
  }
}

メソッド

Javaではメソッドと呼ばれる仕組みを利用できます。メソッドを用いると、処理をひとまとめにして再利用しやすいようにすることができます。

メソッドにある値を与えると、処理を行ったうえで何らかの値を返却します。メソッドに与える値を引数、メソッドが返却する値を戻り値と呼びます。

ファイル名:NewOtonaCheker.java

class NewOtonaCheker
{
  public static void main(String[] args)
  {
  int years_old = 35;

  otona_cheker(years_old);
  }

// 引数として年齢を指定
public void otona_cheker(int years_old)
{
   if (years_old < 20)
    {
       System.out.println (“子供です”);
    } else {
       System.out.println (“大人です”);
    }
  }
}

クラス

上述した通り、Javaはオブジェクト指向型のプログラミング言語であり、すべてのプログラムはクラスで構成されます。Javaでは、class句にてクラスを宣言することができます。

クラスとは、複数のメソッドと変数をひとまとまりにしたものであり、クラスを利用することでプログラムの安全性や再利用性を高めることができます。

以下では、クラスに変数を持たせる形式でサンプルプログラムを書き直した例を紹介します。

ファイル名:NewOtonaCheker2.java

class NewOtonaCheker2
{
  int years_old; // クラスが持つ変数を定義する

  public static void main(String[] args)
  {
  years_old = 35; // クラスが持つ変数に値を代入する

  otona_cheker();
}

public void otona_cheker()
{
    // クラスが持つ変数を参照しているため、メソッドの引数は不要
    if (years_old < 20)
    {
        System.out.println (“子供です”);
    } else {
        System.out.println (“大人です”);
    }
  }
}

まとめ

この記事では、基本情報技術者試験を受けようとされている方に向けて、Javaに関する基本的な内容の解説を行いました。特にプログラミング未経験者にとって午後問題は鬼門となると思います。

いくつかのプログラミング言語から自分に適したものを見つけて、対策を行うことをおすすめします。