18
A
答えて
31
変数を宣言するスコープによって異なります。例えば、ローカル変数はその場合、あなたはインスタンス変数は、デフォルト値を取得するため、インスタンス変数の場合のように nullを代入すると、冗長化され、手動でヌルを割り当てる必要がありますdefault values
を持っていません。述べたように、オブジェクト参照として
public class Test {
Object propertyObj1;
Object propertyObj2 = null; // assigning null is redundant here as instance vars get default values
public void method() {
Object localVariableObj1;
Object localVariableObj1.getClass(); // illegal, a compiler error comes up as local vars don't get default values
Object localVariableObj2 = null;
Object localVariableObj2.getClass(); // no compiler error as localVariableObj2 has been set to null
propertyObj1.getClass(); // no compiler error
propertyObj2.getClass(); // no compiler error
}
}
1
instance variable
は、それらがデフォルト値としてnull
を取るようnull
が割り当てられる必要はないように。しかし、ローカル変数を初期化する必要があります。そうしないと、コンパイルエラーがThe local variable s may not have been initialized
と表示されます。
関連する問題
- 1. は違いがある何
- 2. Java generics - 違いは何ですか?
- 3. **/*。javaと* .javaの違いは何ですか?
- 4. Mule Java TransformerとJava Componentの違いは何ですか
- 5. gdata-java-clientとgoogle-api-java-clientの違いは何ですか?
- 6. Java SEとJava EEの主な違いは何ですか?
- 7. Java WebアプリケーションとJava Enterprise Applicationの違いは何ですか?
- 8. Javaでは、this.method()とmethod()の違いは何ですか?
- 9. Javaではargsとargghとargvの違いは何ですか?
- 10. あなた自身の言葉で、JavaFXとJavaアプレットは何ですか?彼らの違いは何ですか?
- 11. は、方法と機能の違いは何である
- 12. OOPに関するJava、C++、ActionScript3.0の違いは何ですか?
- 13. 違いは何
- 14. インタフェースについてGoとJavaの違いは何ですか?
- 15. マップの違いは何であるとルビーで
- 16. JavaでThread.yield()とThread.sleep(0)の違いは何ですか?
- 17. !=と=の違いは何ですか? Javaで?
- 18. 違いは何ですか?
- 19. 違いは何ですか?
- 20. の違いは何であるのrsync --verbose対-v
- 21. PROC {}及び&PROC {違いは何である}
- 22. javaのこのスーパーキーワードとの違いは何ですか?
- 23. これら2つのJavaコードの違いは何ですか?
- 24. Haskellの型コンストラクタとjavaジェネリック型の違いは何ですか?
- 25. JavaのgetPath()、getAbsolutePath()、getCanonicalPath()の違いは何ですか?
- 26. Java:フォーマット指定子%xと%hの違いは何ですか?
- 27. JavaのFloatとfloatの違いは何ですか?
- 28. Java EEとJ2EEの違いは何ですか?
- 29. JavaのFileReaderとFileInputStreamの違いは何ですか?
- 30. Eclipseの "Java Project"オプションと "Project"オプションの違いは何ですか?