2016-04-26 13 views
-3

メソッドを呼び出すさまざまな方法を理解しようとしています。実験中に、私は何かをする3つの方法を考え出しました。Javaでメソッドを呼び出す3つの方法 - 静的と非静的の比較

public static boolean isFoo(int bar) { 
    return bar % 2 == 0; 
} 

//in a driver class: 
foo.isFoo(7); 

または

public static int foo; 

public Foo(int foo) { 
    this.foo = foo; 

public boolean isFoo() { 
    return foo % 2 == 0; 
} 

//in a driver class: 
Foo foo = new Foo(4); 
System.out.println(foo.isFoo()); 

または静的と考え、なぜされている3つのうち

public static int foo; 

public Foo(int foo) { 
    this.foo = foo; 
} 

public static int getFoo() { 
    return foo; 
} 

public static boolean isFoo(Foo foo) { 
    return foo.getFoo() % 2 == 0; 
} 


//in a driver class: 
Foo foo = new Foo(14); 
System.out.println(Foo.isFoo(foo)); 

私は静的な言葉を使用しているので、私は確信していないので、私はドライバで、私は静的な文脈でそれらのすべてを参照していると思います。それらはすべて静的ですか?

私はグーグルを試みましたが、誰も私の状況に接続していないようです。

ありがとうございました。

+3

*です* - 任意の方法は、あなたの第二のスニペットには 'static'方法はありませんstatic' – MadProgrammer

+0

'としてマークされました。 – Savior

+2

また、参照式で静的メソッドを呼び出すことはできますが、参照しないでください。 – Savior

答えて

2

静的メソッドは1番目と3番目が2つしかありません。もう一つはインスタンスメソッドです。

あなたの実際の質問には、考えすぎないでください。最もきれいで読みやすい方法を保つ。私がここで言うパーフェクト静的メソッドは、「静的と考え、なぜこれらのメソッドの?」

public static boolean isFoo(int bar) { 
    return bar % 2 == 0; 
} 
関連する問題