Java: static とは何か?

 

C言語と Java はよく似ていますが、違う部分も色々あります。

毎度、管理人イガジーです。
イガジーが、戸惑った用語のひとつに static があります。

Cでは staticと書くと(変数領域をスタックではなくて)
データセグメントに置くという意味ですが

javaの static は、いきなり使える(インスタンスを経由せずに使える)
という意味になります。

例えば、何気に Color.BLACK とか、BorderLayout.CENTER
などを使っていたりしますが、これらが static な(フィールド)変数なのです。

Color.BLACK は、 Color クラスの中で、
BorderLayout.CENTERは、BorderLayout クラスの中で
static 宣言されているので、いきなり使う事ができます。

定数だけでなく、メソッドでも整数を16進文字列に変換する
Integer.toHexString(int x);

おまじない的によく使う
System.exit(0); や System.out.println(“hoge”) など
のように、いきなり使えるものがあります。

これも、そのメソッドが static 宣言されているのです。

他で使ってもらいたいクラスを作った場合には、ものによって
static をつけた方が便利なものも出てきますが、
最初のうちは、あまり気にしなくてもよいでしょう。

この記事へのコメントはこちら

メールアドレスは公開されませんのでご安心ください。
また、* が付いている欄は必須項目となりますので、必ずご記入をお願いします。

内容に問題なければ、下記の「コメント送信」ボタンを押してください。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)