Java | 基礎文法:VSCode / IntelliJ の基本操作

Java Java
スポンサーリンク

IDE の全体像

VSCode と IntelliJ IDEA は、Java の開発・実行・テスト・デバッグ・リファクタリングを一気通貫で支える統合開発環境です。VSCode は拡張機能で軽量に始められ、IntelliJ は言語・ビルド・デバッグの深い統合で「迷わない」操作が魅力です。どちらも、プロジェクト作成、依存管理(Maven/Gradle)、コード補完、エラー表示、実行構成、ブレークポイント、ステップ実行、テスト、リファクタリングを標準機能でカバーします。


VSCode の基本操作

Java 拡張の導入とプロジェクト作成

VSCode では「Java Extension Pack」を入れると、言語サーバー、Maven/Gradle、デバッグ、テストが揃います。新規プロジェクトはコマンドパレットから作成できます。最小の「Hello, World」を Maven で用意するなら、ターミナルで生成して VSCode で開くのも手早いです。

mvn -q archetype:generate \
  -DgroupId=com.example \
  -DartifactId=hello \
  -DarchetypeArtifactId=maven-archetype-quickstart \
  -DinteractiveMode=false
code hello

プロジェクトを開くと、Java ツールが自動でソースを認識します。問題タブにコンパイルエラーが表示され、赤い波線で箇所を示してくれます。

実行・デバッグの起動

エディタのクラスに main があれば、エディタ上部の「Run | Debug」ボタンから実行できます。より柔軟に設定したい場合は、左の「Run and Debug」から構成を作成し、launch.json にメインクラスや環境変数、引数を記述します。ブレークポイントは行番号の左クリックで設定し、デバッグビューでステップイン・オーバー・アウト、変数のウォッチ、コールスタック確認ができます。

依存管理とビルドの連携

Maven/Gradle タブからタスクを選び、compiletestpackage を実行できます。pom.xmlbuild.gradle を編集すると、拡張が自動で同期し、依存ダウンロードとコード補完が更新されます。ビルド失敗時は「ターミナルのログ」と「Problems タブ」の両方を見て、どのソース行が原因かを即特定すると修正が速くなります。

テストの作成と実行

テストクラスには @Test を付け、テストエクスプローラーから個別・一括で実行できます。失敗したテストは差分表示が出るため、期待値と実測値のズレを目視で確認します。デバッグ実行も可能で、テスト内のブレークポイントで停止できます。


IntelliJ IDEA の基本操作

新規プロジェクトと SDK 設定

起動直後の「New Project」で JDK を選び、Maven/Gradle を指定して雛形を作成します。IntelliJ は pom.xml/build.gradle を読むだけで依存を解決し、コード補完とナビゲーションが即有効になります。SDK(JDK)の設定が通っていないと補完もビルドも失敗するため、プロジェクト SDK が意図したバージョンかを「Project Structure」で確認します。

実行構成とデバッグの起動

メインクラスを右クリックして「Run」または「Debug」を選ぶと、構成が自動作成されます。環境変数や JVM オプション、プログラム引数は「Edit Configurations」で編集します。ブレークポイントは行頭の赤丸で設定し、条件付きやヒットカウント、ログ出力の設定ができます。デバッグツールウィンドウで、変数、式評価、スレッド切り替え、コールスタックを一望できます。

リファクタリングとナビゲーション

IntelliJ の強みはリファクタリングの安全性です。名前変更(Rename)、メソッド抽出(Extract Method)、フィールド抽出、シグネチャ変更(Change Signature)は参照元の追従まで自動で行われ、コンパイルが通る形に整えてくれます。ナビゲーションはクイック検索(Shift+Shift)、宣言へ移動(Ctrl/⌘+B)、実装へ移動(Ctrl/⌘+Alt+B)、使用箇所を検索(Alt+F7)が基本です。

Maven/Gradle の連携

右側の Maven/Gradle ツールウィンドウからタスクを実行できます。pom.xml を編集すると自動で再インポートされ、依存が同期されます。ビルドに失敗した場合は、下部の「Build」ログと、該当ファイルの波線エラーから直接該当箇所へジャンプして修正します。


両 IDE 共通の重要ポイント(深掘り)

実行構成は「入力・環境・出力」を一箇所で管理する

プログラム引数、環境変数、カレントディレクトリ、JVM オプションを実行構成へ集約すると、再現性が高まり、デバッグやテストのやり直しが速くなります。失敗したときは「構成の違い」を最初に疑い、ローカルと CI、開発機と本番相当の差を埋めます。

ブレークポイントと式評価で「事実」を確かめる

疑わしい行の直前に止め、ステップオーバーで前後差を見ます。式評価で map.containsKey(k)i < a.lengthObjects.equals(a,b) など「なぜこの枝へ進んだか」を即確認します。条件付きブレークポイントを使うと大量データでもピンポイントに止められます。

問題は最小コードに切り出すと速い

巨大なアプリを止めるより、独立した main や単体テストへ切り出して再現し、そこでデバッグすると素早く原因へ到達できます。外部依存はスタブ・ダミーに置き換え、ロジックだけに集中します。


例題で身につける(VSCode / IntelliJ ともに同じ流れ)

Hello, World の作成と実行

最小クラスを作り、エディタから実行します。

package com.example;

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

VSCode は「Run」ボタン、IntelliJ は右クリック「Run」で実行。出力が見えたら、実行構成に引数を追加して "Hello, " + args[0] のように動的化し、引数が渡っているかをコンソールで確認します。

ブレークポイントとステップ実行

配列境界の典型バグを用意し、停止→差分確認→修正の一連を体験します。

int[] a = {10, 20, 30};
for (int i = 0; i <= a.length; i++) {      // 誤り:<=
    System.out.println(a[i]);               // ここにブレークポイント
}
Java

停止時に ia.length を確認し、最後の周回で範囲外になる事実を見て、< に直します。修正後に再実行して正常終了を確認します。

テスト作成とデバッグ

テストを作り、失敗時の差分を見ます。

import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.Test;

class PriceCalcTest {
    @Test void taxed_should_round_tax() {
        int subtotal = 999;
        double rate = 0.1;
        int total = taxed(subtotal, rate);
        assertEquals(1099, total);
    }

    static int taxed(int subtotal, double rate) {
        int tax = (int) Math.round(subtotal * rate);
        return subtotal + tax;
    }
}
Java

テストランナーで実行し、失敗ならテスト内でデバッグを開始。subtotal * rateMath.round(...)subtotal + tax の値変化をステップで確認し、仕様どおりかを数値で確かめます。


つまずきやすいポイントと対処

JDK/SDK の未設定・不一致

補完が効かない、エラーが消えないときは、JDK のパスとバージョン設定を再確認します。VSCode は拡張の Java Home、IntelliJ は Project SDK と Language Level が一致しているかが要点です。

依存の未同期

pom.xml/build.gradle 更新後にエラーが続くときは、再インポート・再同期を実行します。プロキシや社内リポジトリが必要な環境では、設定が正しいかも合わせて確認します。

実行構成の差で「動いたり動かなかったり」

引数・環境変数・作業ディレクトリが異なると再現できません。構成にまとめ、チームで共有(.run 構成や .vscode/launch.json)するとブレが減ります。


仕上げのアドバイス(重要部分のまとめ)

VSCode は軽快に始められ、拡張で必要十分の機能が整います。IntelliJ はプロジェクト・依存・リファクタリング・デバッグが密に統合され、迷いにくいのが強みです。どちらでも「JDK設定→プロジェクト作成→実行構成→ブレークポイント・ステップ→テスト→リファクタリング」の型を身につけると、開発の流れが滑らかになります。問題に遭遇したら、設定と構成を疑い、最小コードに切り出し、ブレークポイントと式評価で「事実」を確認してから直す——この習慣が、初心者から一段上へ引き上げてくれます。

タイトルとURLをコピーしました