Javaのプリミティブ型とは何ですか?
プリミティブ型と参照型の違いは何ですか?
Javaにはいくつのプリミティブ型があり、それらは何ですか?
Javaのプリミティブ型とは何ですか?
プリミティブ型と参照型の違いは何ですか?
Javaにはいくつのプリミティブ型があり、それらは何ですか?
Javaでは、すべての変数にソースコードで宣言された型があります。タイプには、参照型とプリミティブ型の2種類があります。参照型はオブジェクトへの参照です。プリミティブ型には値が直接含まれます。8つのプリミティブ型があります。
たとえば、現実の世界では、さまざまな種類の車両があります。それぞれが異なる目的を果たします。あなたは速く運転するためのスポーツカー、道具を運ぶためのutes、たくさんの商品を運ぶためのトラック、そして贅沢に旅行するためのリムジンを持っています。同様に、Javaでは、さまざまな目的に役立つさまざまなタイプのデータを使用できます。たとえば、数値(加算/減算などに使用される)、単語や文字の伝達に使用される「文字列」を使用できます。文字を使用して追加することはできません。これは意味がありません。また、数字を使用して文を書くこともできません。適切なデータ型を使用して、やりたいことをすべて実行する必要があります。
現在、基本的なデータの「タイプ」がいくつかあります。これらは、レドモンド/サンのボフィンによってすでに作成されています。これらは「プリミティブ」Javaタイプと呼ばれ、値を内部に格納します。どういう意味ですか?それは例によって最もよく説明されます:
プリミティブ型の例
私があなたに50ドルの紙幣を渡した場合、その紙幣自体は50ドルの価値があります。値はメモ自体に保存されます。
参照型と並置されたプリミティブ
ここで、50ドルを渡す代わりに、スイスの私の銀行の貸金庫の住所が記載された紙を1枚渡すと想像してみてください。私があなたにくれた一枚の紙はそれ自体で50ドルの価値はありませんが、それはあなたが50ドルを手に入れることができる住所を指しています。この紙は基本的に「参照」タイプです。これは、それ自体の内部および内部に値を格納せず、特定のアドレスを指しているだけだからです。しかし、私はあなたに何にでもアドレスを与えることができます:飛行機、城、rainforrests:何でも!
後ろのポケットから飛行機や新幹線を誰かに渡すことはできません。住所を渡すだけです。しかし、あなたが50ドル、または任意の種類の通貨を持っている場合:実際の物質はあなたの後ろのポケットにあります。あなたは彼らにあなたの50ドル紙幣の宝の地図を与えるつもりはありません。
一言で言えば、プリミティブ型と参照型の違いです。
お役に立てば幸いです。
Java言語仕様の第4章から。タイプ、値、および変数:
Javaプログラミング言語は静的に型付けされた言語です。つまり、すべての変数とすべての式には、コンパイル時に既知の型があります。
Javaプログラミング言語も強く型付けされた言語です。型は、変数[...]が保持できる値、または式が生成できる値を制限し、それらの値でサポートされる操作を制限し、操作の意味を決定するためです。強力な静的型付けは、コンパイル時にエラーを検出するのに役立ちます。
Javaプログラミング言語の型は、プリミティブ型と参照型の2つのカテゴリに分けられます。プリミティブ型[...]は、ブール型と数値型です。数値型は整数型byte、short、int、long、charであり、浮動小数点型はfloatとdoubleです。参照型[...]は、クラス型、インターフェイス型、および配列型です。特別なヌルタイプもあります。オブジェクト[...]は、動的に作成されたクラス型のインスタンスまたは動的に作成された配列です。参照型の値は、オブジェクトへの参照です。配列を含むすべてのオブジェクトは、クラスObject[...]のメソッドをサポートします。
Javaのプリミティブ型は、クラスなしの型です。値のみを保存します。
double d = 3.0;
d.intValue(); //compiler error!
Double d2 = new Double(3.0);
d2.intValue(); //works!
参照型、プリミティブ型、およびvoid
プリミティブ型(および)ごとに、プリミティブ型のクラスを持つvoid
と呼ばれる定数を定義するラッパー型があります。TYPE
プリミティブ型のクラスを取得するコンパイラーの方法は、.class
表記法を使用することです。例えば
Class<Integer> intClass = int.class; // == Integer.TYPE
Class<Void> voidClass = void.class; // == VOID.TYPE
これらは、値のみを保持する非クラスタイプです。プリミティブ変数を渡すときは、値の参照ではなく、値自体を渡します。
javaは、基本データ型int、double、floatなどを合計8つサポートします。これらは、プリミティブ型のデータまたはデータの基本型です。
boolean、char、byte、short、int、long、double、float
プリミティブ型はクラスではありませんが、数値や文字などの値を格納するために使用できます。
プログラミング言語に組み込まれているデータ型は、プリミティブデータ型と呼ばれます。原始的または組み込みまたは基本的なデータ型という言葉は、作者によって交換可能に使用されます。Javaのプリミティブデータ型は、Javaプログラミング言語によって基本的な構成要素として提供され、そのためにJavaのプリミティブ型と呼ばれます。Javaでは、プログラマーが独自の型(ユーザー定義型)を定義することもできます。プリミティブ型の場合、Javaには組み込みのサポートがあります。プリミティブ型はJava言語によって事前定義されており、予約されたキーワードによって名前が付けられます。Javaは8つの組み込みデータ型をサポートしており、それらの基本的な動作とサポートされている操作はプログラマーが変更することはできません。
プリミティブの実際の意味は、データ型がクラスであるかどうかです。Javaではデータ型がプリミティブではないということはデータ型がクラスではないことを意味するため、Javaは純粋なオブジェクト指向言語ではありません。
Eg:- int a; a=10;
/*Integer a=new Integer();
a=10;
*/not possible
C#ではデータ型はクラスであり、それが純粋なオブジェクト指向言語である理由です
データ型には、プリミティブとオブジェクト参照の2つのタイプがあります。プリミティブデータ型はオブジェクトではなく、実際の値のみを格納しますが、オブジェクト参照変数は、参照するオブジェクトのアドレスを格納します。
Javaプログラミング言語でサポートされている8つのプリミティブデータ型:
バイト-これは、8ビットの符号付き2の補数整数です。最小値は-128、最大値は127です。
short-16ビットの符号付き2の補数整数です。最小値は-32,768、最大値は32,767です。
詳細説明はこちら
データ型には、との2つの区分がprimitives
ありreference
ます。プリミティブは以下を表します
私たちが持っている数字の下で
これらは数値を表し、効率的に使用できるメモリを節約するためにさまざまなメモリ割り当てがあります。intとlongの中で、私たちは署名と署名なしを行ってきました。符号なしはmin=0から始まります。
Javaには2種類のタイプがあります。
プリミティブ型
プリミティブ型には値が直接含まれます。
int i = 24;
8つのプリミティブ型があります。
参照型
参照型はオブジェクトへの参照です。Test.javaクラス内に新しいTestオブジェクトを作成する場合、参照型があります
Test t = new Test();
特に文字列は参照型です。プリミティブ型ではありません。Stringオブジェクトを作成する方法は2つあります。
String s = "abc";
String y = new String("abc");