Java の概要
Java は 1995 年に誕生した、世界で最も使用されているプログラミング言語の 1 つです。 Sun Microsystems (現 Oracle) による。彼の哲学 「一度書けばどこでも実行できる」 これは、エンタープライズ、Android、および分散システム アプリケーションにとって好ましい選択肢となっています。
何を学ぶか
- Javaの歴史と哲学
- JVM、JRE、JDKの違い
- 開発環境の構成
- Javaプログラムの構造
- 命名規則
ジャワの歴史
Javaは1991年に「Oak」と呼ばれるサン・マイクロシステムズの社内プロジェクトとして誕生しました。 ジェームズ・ゴズリング率いる。目標はデバイス用の言語を作成することでした Java は埋め込み型でしたが、Web の爆発的な普及により、Java はアプレットにそのニッチな分野を見つけました。 そしてサーバーサイドアプリケーションでも。
基礎段階
- 1995年: 最初のパブリックリリース (Java 1.0)
- 2004年: Java 5 ではジェネリックス、アノテーション、列挙型が導入されています
- 2014年: Java 8 はラムダ式とストリーム API を導入します
- 2017年: オラクルは半年ごとのリリースを採用
- 2021年: Java 17 LTS (長期サポート)
- 2023年: 仮想スレッドを備えた Java 21 LTS
JVM、JRE、および JDK
これら 3 つのコンポーネントの違いを理解することは誰にとっても不可欠です Java開発者。
JVM (Java 仮想マシン)
JVM は Java エコシステムの中心です。動作する仮想マシンです Java バイトコード。プログラムをプラットフォームに依存しません。
Codice Sorgente (.java)
|
v
Compilatore (javac)
|
v
Bytecode (.class)
|
v
JVM (esecuzione)
JRE (Java ランタイム環境)
JRE には、JVM と実行に必要な標準ライブラリが含まれています。 Java アプリケーション。エンドユーザーにとってはこれで十分です Java プログラムを実行します。
JDK (Java 開発キット)
JDK には、JRE に加えて、コンパイラ (javac)、 デバッガ、ドキュメント、およびさまざまなユーティリティ。開発する必要がある Java アプリケーション。
+------------------------------------------+
| JDK |
| +------------------------------------+ |
| | JRE | |
| | +------------------------------+ | |
| | | JVM | | |
| | +------------------------------+ | |
| | + Librerie Standard | | |
| +------------------------------------+ |
| + Compilatore (javac) |
| + Debugger |
| + Tools (jar, javadoc, etc.) |
+------------------------------------------+
開発環境のセットアップ
1.JDKのインストール
Java で開発するには、LTS ディストリビューションをインストールすることをお勧めします (長期サポート) Java 21 と同様。
# Aggiorna i repository
sudo apt update
# Installa OpenJDK 21
sudo apt install openjdk-21-jdk
# Verifica l'installazione
java --version
javac --version
# Installa OpenJDK 21
brew install openjdk@21
# Aggiungi al PATH
echo 'export PATH="/opt/homebrew/opt/openjdk@21/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
# Verifica
java --version
# Scarica da: https://adoptium.net/
# Oppure usa winget:
winget install EclipseAdoptium.Temurin.21.JDK
# Verifica (PowerShell)
java --version
2.IDEの設定
IntelliJ IDEA は、プロフェッショナルな Java 開発に最もよく使用される IDE です。 コミュニティ バージョンは無料であり、このコースには十分です。
IDE推奨
- IntelliJ アイデア: 最も完全で、エンタープライズ プロジェクトに最適
- VS コード: 軽量、Java 拡張機能付き (Extension Pack for Java)
- 日食: 歴史があり、今でもエンタープライズ部門で使用されている
Java プログラムの構造
最初のプログラム
すべての Java プログラムは、メソッドを含むクラスから始まります。 main.
/**
* Il mio primo programma Java.
* Questo è un commento Javadoc.
*/
public class HelloWorld {
/**
* Punto di ingresso dell'applicazione.
* @param args argomenti da linea di comando
*/
public static void main(String[] args) {
// Questo è un commento su singola riga
System.out.println("Ciao, Mondo!");
/*
* Questo è un commento
* su più righe
*/
}
}
構造解析
public class HelloWorld // Dichiarazione della classe
{ // La classe DEVE avere lo stesso nome del file
public // Modificatore di accesso (visibile ovunque)
static // Metodo di classe (non richiede istanza)
void // Tipo di ritorno (nessun valore)
main // Nome del metodo (entry point)
(String[] args) // Parametri (array di stringhe)
System.out.println() // Stampa su console con newline
}
コンパイルと実行
# Compila il file sorgente
javac HelloWorld.java
# Viene generato HelloWorld.class (bytecode)
# Esegui il programma
java HelloWorld
# Output: Ciao, Mondo!
命名規則
Java には、コードを作成するための明確に定義された命名規則があります。 読みやすくてプロフェッショナル。
// CLASSI: PascalCase (maiuscola iniziale ogni parola)
public class StudenteUniversitario { }
public class GestoreOrdini { }
// METODI e VARIABILI: camelCase (minuscola iniziale)
public void calcolaMedia() { }
private String nomeCompleto;
int conteggioStudenti;
// COSTANTI: UPPER_SNAKE_CASE
public static final int MAX_STUDENTI = 30;
public static final String CODICE_SCUOLA = "SC001";
// PACKAGE: tutto minuscolo, dominio invertito
package com.scuola.gestione.studenti;
package it.istituto.registro.voti;
名前のベストプラクティス
従うべきルール
- 説明:
calcolaMediaVoti()の代わりにcalc() - 略語は避けてください:
studenteの代わりにstd - メソッドの動詞:
getVoto(),setNome(),isPromosso() - クラス別の名詞:
Studente,Corso,Voto - コレクションの複数形:
List<Studente> studenti
コメントの種類
// 1. Commento su singola riga
int voto = 8; // Voto dello studente
// 2. Commento su più righe
/*
* Questo blocco di codice calcola
* la media dei voti di uno studente
* considerando tutti i trimestri.
*/
// 3. Commento Javadoc (per documentazione)
/**
* Calcola la media aritmetica dei voti.
*
* @param voti array dei voti da mediare
* @return la media calcolata
* @throws IllegalArgumentException se l'array è vuoto
*/
public double calcolaMedia(int[] voti) {
// implementazione
}
完全な例: 学校名簿
package it.scuola.registro;
/**
* Classe principale del Registro Scolastico.
* Dimostra la struttura base di un programma Java.
*
* @author Federico Calo
* @version 1.0
*/
public class RegistroScolastico {
// Costanti della classe
public static final String NOME_SCUOLA = "Liceo Scientifico Einstein";
public static final int ANNO_SCOLASTICO = 2025;
/**
* Punto di ingresso dell'applicazione.
*
* @param args argomenti da linea di comando (non utilizzati)
*/
public static void main(String[] args) {
// Stampa intestazione
System.out.println("================================");
System.out.println(" " + NOME_SCUOLA);
System.out.println(" Anno Scolastico: " + ANNO_SCOLASTICO);
System.out.println("================================");
// Dati di esempio
String nomeStudente = "Mario Rossi";
String classe = "3A";
int[] votiMatematica = {7, 8, 6, 9, 8};
// Calcolo media
double media = calcolaMedia(votiMatematica);
// Stampa risultato
System.out.println("\nStudente: " + nomeStudente);
System.out.println("Classe: " + classe);
System.out.println("Media Matematica: " + media);
System.out.println("Esito: " + (media >= 6 ? "Promosso" : "Rimandato"));
}
/**
* Calcola la media aritmetica di un array di voti.
*
* @param voti array contenente i voti
* @return la media aritmetica dei voti
*/
public static double calcolaMedia(int[] voti) {
if (voti == null || voti.length == 0) {
return 0.0;
}
int somma = 0;
for (int voto : voti) {
somma += voto;
}
return (double) somma / voti.length;
}
}
================================
Liceo Scientifico Einstein
Anno Scolastico: 2025
================================
Studente: Mario Rossi
Classe: 3A
Media Matematica: 7.6
Esito: Promosso
結論
この最初の記事では、Java の基本、つまりその歴史、 JVM/JRE/JDK アーキテクチャ、開発環境の構成方法、 Java プログラムの構造。
Nel 次の記事 をさらに深く掘り下げていきます データ型 原始的な そして フロー制御: 変数、 演算子、条件、サイクル。
覚えておくべき重要なポイント
- JDK: 開発に必要(コンパイラを含む)
- JRE: 実行するために必要です (JVM + ライブラリを含む)
- JVM: バイトコードを実行し、移植性を確保します
- 主要: すべての Java アプリケーションのエントリ ポイント
- ネーミング: クラスの場合は PascalCase、メソッド/変数の場合は CamelCase
- Javadoc: コードを専門的に文書化する







