2017-09-11 8 views
-4

EDIT:クラス外の変数を初期化することは可能でしょうか?クラス外の変数を初期化することはできますか?

static int example = 1; 

public class test { 

public static void main(String []args) { 
System.out.println("I have " + example + " question!"); 
} 

またはちょうどそのようにそれを行うために、より便利である::私はこのようなコードがある場合 は、例えば、両方の方法が可能である場合に

public class test { 
static int example = 1; 

public static void main(String []args) { 
System.out.println("I have " + example + " question!"); 
} 

、違いは何ですか? ありがとうございます。

+2

最初の例はコンパイルされません。 –

+3

試しましたか? – shmosel

+4

両方の例はコンパイルされません – baao

答えて

-3

Javaでは、クラス宣言の外で変数を宣言することはできず、コンパイルエラーになります。

投稿した2番目のコードスニペットを表示する必要があります。

public class test { 
    private static int example = 1; 

    public static void main(String []args) { 
     System.out.println("I have " + example + " question!"); 
    } 

}

+0

もう一つはうまくいきません。 –

+1

** "クラス宣言が許可され、コンパイルエラーになります。" ** - Lol、あなたは許されていないと思います。 –

+0

私は自分の答えを更新しました。 – kevenlolo

0

はありませんあなたのスニペットのどちらも動作します。以下はそれを動作させるためにあなたのコードの編集されたバージョンです。 Javaはグローバル変数を持たず、メインは静的で静的メソッドは静的でないクラス変数にアクセスできないため、2番目の関数は機能しません。

0

Javaはグローバル変数をサポートしていないため、 JavaはOOPSプリンシパルを念頭に置いて設計されているため、Javaのすべての変数はローカルまたはクラスのメンバーです。

したがって、クラス外の変数を宣言することはできません。

関連する問題