Javaの static
(スタティック)は、「クラスに属するもの」を意味します。これは「インスタンス(オブジェクト)を作らずに使えるメンバ」を定義するために使われます。
Contents
✅ ざっくり定義
種類 | 意味 |
---|---|
static 変数 |
クラス全体で共有される1つの変数(共通データ) |
static メソッド |
インスタンスを作らなくても使える関数 |
static ブロック |
クラスが初めて読み込まれたときに1回だけ実行 |
✅ 例で理解する
📦 クラスと static
の関係
📌 使い方(mainから)
✅ static
の特徴まとめ
項目 | 説明 |
---|---|
所属先 | クラスに所属(インスタンスに属さない) |
使用方法 | クラス名.メンバ名 でアクセスできる |
メモリ上の特徴 | 1つだけメモリに存在し、すべてのインスタンスで共有 |
代表例 | Math.abs() , System.out.println() など |
✅ よく使うパターン
1. 定数定義
2. ユーティリティクラス(インスタンス不要)
3. カウンターや共通の状態
🚫 static の注意点
-
static
メソッドでは 非staticなメンバは使えない -
状態を共有するため、スレッドセーフじゃないこともある(特にWebアプリで注意)
🎓 まとめ
用途 | キーワード |
---|---|
共有変数 | static 変数 |
便利関数 | static メソッド |
一度だけの初期化処理 | static 初期化ブロック |

Javaの記事の一覧はJava にまとめてあります