Java のインターフェースがなぜ・どのようにして
static メソッドを持つようになったのかを解説します: 宣言の構文、
default メソッドとの違い、主要な制約(継承されない、オーバーライドできない、呼び出しはインターフェース名経由のみ、アクセスできるのは
static メンバーのみ、Java 9+ の
private static 対応)。実例として
Movable.resetPosition()、補助的な
Logger、コレクションのファクトリ
List.of()/
Set.of()/
Map.of()、ユーティリティ
Comparator.reverseOrder() を見ていきます。最後に — よくあるミスとその回避方法も紹介します。