JAVA の基本: 混同されやすい 2 つのタイプ (基本データと参照データ)
JAVA の基礎を学ぶとき、誰もが私と同じように、基本データ型と参照データ型をどのように区別するか常に混同すると思います。それぞれの特徴をまとめてみましたので参考にしてください。
1. 基本データ型
byte: Java の最小のデータ型で、メモリ内で 8 ビット (bit)、つまり 1 バイトを占有します。値の範囲は -128 ~ 127、デフォルト値は次のとおりです。 0
short: 短い整数型、メモリ内で 16 ビット、つまり 2 バイトを占有、値の範囲 -32768 ~ 32717、デフォルト値 0
int: 整数型、整数の格納に使用され、内部的に 32 を占有ビット、つまり 4 バイト、値の範囲は -2147483648 ~ 2147483647、デフォルト値は 0 です
long: 長整数、メモリ内の 64 ビット、つまり 8 バイトを占有します -2^63 ~ 2^ 63 -1、デフォルト値 0L
float: 浮動小数点型、メモリ内の 32 ビット、つまり 4 バイトを占有し、小数点付きの数値を格納するために使用されます (double との違いは、float 型の有効な小数点であることです)はわずか 6~7 ビットです)、デフォルト値 0
double: 倍精度浮動小数点型、小数点付きの数値を格納するために使用され、メモリ内の 64 ビット、つまり 8 バイトを占有します、デフォルト値 0
char : 単一文字の格納に使用される文字タイプ、16 ビット、つまり 2 バイトを占有します。値の範囲は 0 ~ 65535 で、デフォルト値は空です。
boolean: ブール型、1 バイトを占有し、以前に使用されます。 true または false (true、false の 2 つの値のみ) を決定します。デフォルト値は false
class
interface type
array type
enumeration type
アノテーションの型
3. 違い
基本的なデータ型作成時にスタック上にメモリが確保され、値はスタック上に直接格納されます。
参照データ型作成時には、まずスタック上の参照 (ハンドル) にメモリの一部を割り当てる必要があり、オブジェクトの特定の情報がヒープ メモリに格納され、次に参照がヒープ メモリに格納されます。 stack はヒープ アドレス内のオブジェクトを指します。
たとえば、属性 name、年齢、パラメータを持つコンストラクター メソッドを持つクラス person があります: Person p = new Person("zhangsan",20);
メモリ内の具体的な作成プロセス:
1. まず、スタック メモリに p のスペースを割り当てます。 2. ヒープ メモリに Person オブジェクトのスペースを割り当て、その 3 つの属性の初期値を 0 に設定します。属性のクラス パーソン 定義に、オブジェクトの 2 つの属性に値を割り当てます。
4. コンストラクター メソッドを呼び出し、2 つの属性に値を割り当てます。 20;この時点では p と person オブジェクトの間に接続がないことに注意してください) ;
5. ヒープ メモリ内の person オブジェクトのアドレスをスタック内の p に割り当てます。 (ハンドル)p. を参照してください。
IV. 関連知識 静的領域は、自動グローバル変数と静的変数 (静的グローバル変数とローカル変数を含む) を保存します。静的領域の内容はプログラム全体のライフサイクル全体にわたって存在し、コンパイル中にコンパイラによって割り当てられます。
ヒープ領域は、通常、プログラマによって割り当てられ、解放されます。malloc 一連の関数または new 演算子によって割り当てられたメモリは、free または delete によって決定されます。プログラムが終了し、OS によって解放されるまで存在します。柔軟な使用が特徴で、比較的大きな領域ですが、エラーが発生しやすいです
スタック領域はコンパイラによって自動的に割り当ておよび解放され、スタック上の内容はスタックのスコープ内にのみ存在します。関数が終了すると、これらのコンテンツも自動的に破棄されます。これは効率が高いという特徴がありますが、スペースが限られています。
ここには定数文字列が配置されます。プログラム終了後にシステムにより解放されます。関連する推奨事項:
JAVA チュートリアル | 第 2 章 基本データ型
JavaScript の基本データ型と参照型の違いの詳細な説明
ビデオ チュートリアル:基本データ型をパラメーターとして渡す -最新のJavaが完成しました
以上がJAVA の基本: 混同されやすい 2 つのタイプ (基本データと参照データ)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









一部のアプリケーションが適切に機能しないようにする会社のセキュリティソフトウェアのトラブルシューティングとソリューション。多くの企業は、内部ネットワークセキュリティを確保するためにセキュリティソフトウェアを展開します。 ...

システムドッキングでのフィールドマッピング処理は、システムドッキングを実行する際に難しい問題に遭遇することがよくあります。システムのインターフェイスフィールドを効果的にマッピングする方法A ...

データベース操作にMyBatis-Plusまたはその他のORMフレームワークを使用する場合、エンティティクラスの属性名に基づいてクエリ条件を構築する必要があることがよくあります。あなたが毎回手動で...

intellijideaultimatiateバージョンを使用してスプリングを開始します...

多くのアプリケーションシナリオでソートを実装するために名前を数値に変換するソリューションでは、ユーザーはグループ、特に1つでソートする必要がある場合があります...

Javaオブジェクトと配列の変換:リスクの詳細な議論と鋳造タイプ変換の正しい方法多くのJava初心者は、オブジェクトのアレイへの変換に遭遇します...

データベースクエリにTKMYBATISを使用する場合、クエリ条件を構築するためにエンティティクラスの変数名を優雅に取得する方法は一般的な問題です。この記事はピン留めします...

Redisキャッシュソリューションは、製品ランキングリストの要件をどのように実現しますか?開発プロセス中に、多くの場合、ランキングの要件に対処する必要があります。
