質問がありますが、なぜJavaのプリミティブデータ型は「Javaデータ型」などと呼ばれていませんか?Javaプリミティブデータ型がjavaデータ型と呼ばれるのはなぜですか?
答えて
これらを区別するため、Objects。
オブジェクトデータ型と区別します。
Javaにはprimitivesよりも多くのデータ型があるためです。プリミティブデータ型は、次のとおりです。
byte
short
int
long
float
double
boolean
char
非プリミティブであり、データ型はobjectsへの参照である参照データ型です。
いくつかの例がある:ここ
String
Integer
ArrayList
Random
JFrame
は番目の簡単な例であります2種類のE差:10
Integer i2
のプリミティブint
値を参照、Integer
の参照データ型の変数であると
int i1 = 10;
Integer i2 = Integer.valueOf(10);
int i1
は、基本データ型int
の変数であります値10
を含むInteger
オブジェクトです。
reference typesもデータ型と考えることができます。プリミティブは値型と見なされます。どちらもデータ型と考えることができます。
Javaには2つのタイプのカテゴリがあるためです。 Java Language Specification, CHAPTER 4: Types, Values, and Variablesから
:プリミティブ型と参照型:Javaプログラミング言語の
型は2つのカテゴリに分類されます。プリミティブ型 (§4.2)は、boolean
型と数値型です。数値タイプは、整数タイプbyte
,short
,int
,long
およびchar
、および浮動小数点タイプfloat
およびdouble
です。参照タイプ (§4.3)は、クラスタイプ、インタフェースタイプ、および配列タイプです。特別なnull型もあります。オブジェクト (§4.3.1)は、動的に作成されたクラスタイプのインスタンスまたは動的に作成された配列です。参照型の値は、オブジェクトへの参照です。配列を含むすべてのオブジェクトは、クラスObject
(§4.3.2)のメソッドをサポートしています。文字列リテラルは、String
オブジェクト (§4.3.3)で表されます。
非プリミティブ型は、Javaの参照型と呼ばれ、彼らは大文字で始まる名前を持っています。例:Integer、Floatなど。非プリミティブの場合、インスタンスを作成できます。
理由を理解するために、Java以外のプログラミング言語を調べる必要があると思います。たとえば:Cで
++、プリミティブデータ型(
int
、double
など)、構成されたデータ型(struct
、等)及びオブジェクト/参照型があります。Adaには、プリミティブ型と、プリミティブ型から派生した他のデータ型があります。例えば範囲タイプ。
したがって、私の理解では、Javaデータ型は他の言語のコンテキストに入れるための「プリミティブデータ型」として記述されています。それらはオブジェクトアイデンティティーを持たないという意味での "データ型"であり、特定の型がJava言語によって定義され(そして基本的に)Java言語の基本であるという意味では「プリミティブ」です。
オブジェクトも変数であるため、「プリミティブ」という用語はこれらの型を区別するために使用されます。
- 1. Javaの誤ったプリミティブデータ型ですか?
- 2. javaがプリミティブデータ型の関数オーバーロードをサポートするのはなぜですか?
- 3. Java Numberデータ型がオーバーフローするのはなぜですか?
- 4. 永続データとプリミティブデータ型イオスプログラミング
- 5. Javaコレクション。プリミティブ型はなぜですか?
- 6. コピーコンストラクタは、プリミティブデータ型
- 7. Javaの反復型パラメータ型がオーバーライドできないのはなぜですか?
- 8. プリミティブデータ型のオーバーライド
- 9. Javaで新しいプリミティブデータ型を作成できる
- 10. SWIGTPYE_pデータ型Java
- 11. Javaのジェネリックのプリミティブデータ型とはどのように違いますか?
- 12. JavaのNSデータ型ですか?
- 13. Javaの「最高」のスーパークラスが「オブジェクト」と呼ばれるのはなぜですか?
- 14. Javaのユーザーレベルのスレッドが「グリーン」と呼ばれるのはなぜですか?
- 15. Java + Redisとデータ集約型アプリケーションのJavaの単純な効率
- 16. ブール型のデータ型がMySQLで動作しないのはなぜですか?
- 17. OracleのRAW用Javaデータ型
- 18. このVBAプリミティブデータ型とは何ですか?
- 19. JavaからのOracleデータ型へのアクセス
- 20. CからJavaへのデータ型のマッピング
- 21. JavaからWSDLへのデータ型
- 22. Javaジェネリックスがジェネリック型の型変換を許可しないのはなぜですか?
- 23. mysqlの文字列型(java)と日付データ型を変換するには?
- 24. Cのプリミティブデータ型の範囲は?
- 25. JavaでResultSetMetaDataから異なるデータ型を取得するにはどうすればよいですか?
- 26. ジェネリック型のJavaのジェネリック型
- 27. なぜデータ型が気になるのですか?
- 28. 整数型とlong型のJavaのビット演算子ですか?
- 29. データ駆動型アプリケーションに最適なJava EEテクノロジのスタックはどれですか?
- 30. Java - マップのキーとして使用されるデータ型
もちろん、次のようにすることもできます。 整数i2 = 10; – Joshua
@ジョシュア:確かに、オートボクシングが始まるからです。カバーの背後には、プリミティブとラッパークラスの間に変換があります。 – coobird
そして、もちろん: *オブジェクト –