まず、staticキーワードは、クラスレベルの変数やメソッドに適用されます。これにより、クラスのインスタンスを作成せずに直接アクセスできるようになります。以下に、staticキーワードの使用例としていくつかのコード例を示します。
- 静的変数の使用例:
public class MyClass {
static int count = 0;
public MyClass() {
count++;
}
}
上記の例では、静的変数count
が定義されています。この変数は、クラスのすべてのインスタンス間で共有されます。インスタンスが作成されるたびに、count
の値がインクリメントされます。
- 静的メソッドの使用例:
public class MathUtils {
public static int add(int a, int b) {
return a + b;
}
}
上記の例では、add
という静的メソッドが定義されています。このメソッドは、インスタンスを作成せずに直接呼び出すことができます。
さらに、staticキーワードにはいくつかの注意点があります。
- staticブロック: クラスが初めて読み込まれるときに実行される特殊なブロックです。主に初期化処理に使用されます。
public class MyClass {
static {
// 初期化処理
}
}
- staticインポート: 特定のクラスの静的メンバーを直接インポートすることができます。
import static java.lang.Math.PI;
- 静的なフィールドとスレッドセーフ: 複数のスレッドから同時にアクセスされる可能性がある場合、静的なフィールドへのアクセスはスレッドセーフにする必要があります。
これらは、Javaにおけるstaticキーワードの基本的な使用方法と注意点です。この記事を参考にして、静的な変数やメソッドの使用方法を理解し、効果的に活用してください。