光阴似箭催人老,日月如移越少年。
リーリー
まず、s は int 型であり、Object 型ではなく基本型であるため、「重複した s オブジェクトを多数作成する」ということはありません
ここで作成されるのは int 型の変数です。この変数はスタックに保存されます
ループ回数を Integer.MAX_VALUE に設定してもエラーは報告されません。具体的な理由は不明ですが、実際には毎回同じメモリ領域が使用されるようにコンパイラがコードを最適化します。毎回新しいメモリ領域を開く代わりに
整数を試すことができます (笑)
1. 最初に理解する必要があるのは、コード内の s と i は、C 言語のポインターに相当する単なるオブジェクトへの参照であるということです。サインのスペース。 2. for をループするたびに、同じ名前の参照を宣言することになります。そうすると、コンパイラは同じ名前のこれらの参照を区別できるため、何度ループしても、実際には の名前は 1 つだけになります。 ' 参照。最初の for ループで初期化され、後続の各ループでこの参照に同じ名前の値が割り当てられます。 3. 出力結果を確認したい場合は、ローカル変数の有効なドメインに system.out を入れます。
1. このコードはオブジェクトを作成しません。Int はオブジェクトではなく、基本的なデータ型です。 2. このコードはコンパイラーによって最適化され、その結果は int s = 9; の形式になると思います。
int s = 9;
Java コンパイラを使用しているためです。
int はどこから来たのでしょうか?
リーリー
まず、s は int 型であり、Object 型ではなく基本型であるため、「重複した s オブジェクトを多数作成する」ということはありません
ここで作成されるのは int 型の変数です。この変数はスタックに保存されます
ループ回数を Integer.MAX_VALUE に設定してもエラーは報告されません。具体的な理由は不明ですが、実際には毎回同じメモリ領域が使用されるようにコンパイラがコードを最適化します。毎回新しいメモリ領域を開く代わりに
整数を試すことができます (笑)
1. 最初に理解する必要があるのは、コード内の s と i は、C 言語のポインターに相当する単なるオブジェクトへの参照であるということです。サインのスペース。
2. for をループするたびに、同じ名前の参照を宣言することになります。そうすると、コンパイラは同じ名前のこれらの参照を区別できるため、何度ループしても、実際には の名前は 1 つだけになります。 ' 参照。最初の for ループで初期化され、後続の各ループでこの参照に同じ名前の値が割り当てられます。
3. 出力結果を確認したい場合は、ローカル変数の有効なドメインに system.out を入れます。
1. このコードはオブジェクトを作成しません。Int はオブジェクトではなく、基本的なデータ型です。
を確認するには、これを実行します。2. このコードはコンパイラーによって最適化され、その結果は
int s = 9;
の形式になると思います。Java コンパイラを使用しているためです。
int はどこから来たのでしょうか?