[解決済み] Javaにおけるデフォルト値と初期化
2023-04-24 12:26:19
質問
ベースは 私の参照 のように、プリミティブ型はデフォルト値を持ち、オブジェクトはnullになります。あるコードの一部をテストしてみました。
public class Main {
public static void main(String[] args) {
int a;
System.out.println(a);
}
}
行の
System.out.println(a);
はエラーとなり、変数
a
という変数を指すエラーになります。
variable a might not have been initialized
であるのに対し、与えられた参考文献では
integer
には
0
をデフォルト値として使用します。しかし、以下のコードでは、実際に表示されるのは
0
.
public class Main {
static int a;
public static void main(String[] args) {
System.out.println(a);
}
}
最初のコードで何が間違っているのでしょうか?クラス変数はローカル変数とは違う動きをするのでしょうか?
どのように解決するのですか?
最初のコードサンプルでは
a
は
main
メソッドローカル変数です。メソッドローカル変数は、使用する前に初期化する必要があります。
2つ目のコードサンプルでは
a
はクラスのメンバ変数であるため、デフォルト値に初期化されます。
関連
-
BindException: アドレスはすでに使用中です:バインドエラー解決
-
git pull appears現在のブランチに対するトラッキング情報がありません。
-
[解決済み] JavaでInputStreamを読み込んでStringに変換するにはどうすればよいですか?
-
[解決済み] JavaでNullPointerExceptionを回避する方法
-
[解決済み] JavaにおけるHashMapとHashtableの違いは何ですか?
-
[解決済み] Javaでメモリーリークを発生させるにはどうしたらいいですか?
-
[解決済み] Javaにおけるpublic、protected、package-private、privateの違いは何ですか?
-
[解決済み] JavaでArrayListではなくLinkedListを使用するのはいつですか?
-
[解決済み] ArrayListの初期化を1行で行う。
-
[解決済み] Javaはパラメータのデフォルト値をサポートしていますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】変数が初期化されていないかもしれないエラー
-
実行中にEclipseがポップアップする A Java Exception has occurred
-
型に解決できない エラー解決
-
プロジェクトの依存関係を解決できない。
-
ブートレイヤーの初期化中にエラーが発生しました java.lang.module.FindException: モジュールが見つかりません
-
無効なメソッド宣言
-
XXX型を囲むインスタンスがJavaでアクセスできない
-
X11 DISPLAY変数が設定されていない」問題の解決方法
-
JDK8 の Optional.of と Optional.ofNullable メソッドの違いと使い方を説明する。
-
ApiModel と @ApiModelProperty の使用法