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 にまとめてあります
