質問がありますが、なぜ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がプリミティブデータ型の関数オーバーロードをサポートするのはなぜですか?
- 4. Java Numberデータ型がオーバーフローするのはなぜですか?
- 5. 永続データとプリミティブデータ型イオスプログラミング
- 6. Float、Boolean、doubleはJavaのクラスまたはプリミティブデータ型です。
- 7. Javaコレクション。プリミティブ型はなぜですか?
- 8. コピーコンストラクタは、プリミティブデータ型
- 9. Javaの反復型パラメータ型がオーバーライドできないのはなぜですか?
- 10. プリミティブデータ型のオーバーライド
- 11. Javaで新しいプリミティブデータ型を作成できる
- 12. Javaのジェネリックのプリミティブデータ型とはどのように違いますか?
- 13. Java StringTokenizer異なるデータ型
- 14. SWIGTPYE_pデータ型Java
- 15. oracleデータ型rawに相当するJava型は何ですか?
- 16. Addメソッドが返す型はなぜRationalですか? - Java
- 17. Java 8のjava.util.stream.Streamのempty()メソッド(型なし)に型パラメータが含まれているのはなぜですか?
- 18. データ型操作Java
- 19. JavaのNSデータ型ですか?
- 20. Javaの「最高」のスーパークラスが「オブジェクト」と呼ばれるのはなぜですか?
- 21. Javaのユーザーレベルのスレッドが「グリーン」と呼ばれるのはなぜですか?
- 22. Java + Redisとデータ集約型アプリケーションのJavaの単純な効率
- 23. データ型がデータを連結するのはなぜですか?
- 24. OracleのRAW用Javaデータ型
- 25. 抽象データ型とは何ですか?それはJavaのクラスですか?
- 26. プリミティブデータ型のパフォーマンス対ラッパークラス
- 27. Haskellの型コンストラクタとjavaジェネリック型の違いは何ですか?
- 28. ブール型のデータ型がMySQLで動作しないのはなぜですか?
- 29. System.ArgumentException:型パラメータ名:型がJava型から派生しない
- 30. このVBAプリミティブデータ型とは何ですか?
もちろん、次のようにすることもできます。 整数i2 = 10; – Joshua
@ジョシュア:確かに、オートボクシングが始まるからです。カバーの背後には、プリミティブとラッパークラスの間に変換があります。 – coobird
そして、もちろん: *オブジェクト –