修飾子の実験Advertisementstaticメソッド
staticをつけたメソッドをstaticメソッドと呼ぶ。変数と同じでstaticではないメソッドはインスタンスメソッドなどと呼ばれる。
staticメソッドの場合もクラスをインスタンス化しないで使うことができて、クラス名を使ってアクセスすることになる。static変数の時と同じ。 その例。
public class Test{
public static void main(String args[]){
stTest.func();
}
}
class StaticTest{
static public void func(){
System.out.println("func()メソッド");
}
}
出力結果。
func()メソッド。StaticTestクラスのオブジェクトを作らないで使うことができた。 オブジェクトを複数作った場合、staticのメソッドはひとつのメソッドを共有することになる。オブジェクトをいくつ作っても存在するメソッドはひとつ。 実験のしようがないからプログラムの実行は省略。 注意点。staticメソッドからは、そのクラスのインスタンス変数・インスタンスメソッドを使うことができない。 実験。
public class Test{
public static void main(String args[]){
stTest.func();
}
}
class StaticTest{
int num = 100;
static public void func(){
System.out.println(num);
}
}
結果
Test.java:11: static でない変数 num を
static コンテキストから参照することはできません。
System.out.println(num);
^
エラー 1 個
staticメソッドから使えるのは同じstaticのついた変数とメソッドだけなので注意。
Advertisement |
ショートカット・634・634ブログ ・このカテゴリのトップページに戻る ・Incubator(Pukiwiki) ・634ラボ UIコレクションギャラリー ZO-3ジェネレーター サイト検索Y!ログール |