プリミティブ型とは?参照型とは?2つの違いって何? by JAVAプログラミング初心者vol.48

スポンサーリンク
Java攻略

プリミティブデータタイプ(プリミティブ型)とか参照型とかをよく目にするようになったけれど、用語については殆どスルーしてた。

そろそろこの辺で用語について少しづつ知っていこうかなと思ったので、今回はプリミティブ型と参照型と呼ばれるものについてまとめてみた。

いつまでも無視するわけにはさすがにいかないか・・・。

 

スポンサーリンク

データの型

 

Javeのデータの型は、大きく2つに分けることができる。

一つが「プリミティブ型」と呼ばれるもの。

もう一つが「参照型」と呼ばれるもの。

 

プリミティブ型とは

 

プリミティブとは英語で「primitive」をそのままカタカナ読みしたもの。
根元の、基本の」といった意味がある。
primitive typeと英語では使われているから、日本語では「プリミティブ型」と呼ばれてるみたい。

 

プリミティブ型は「byte、short、int、long、float、double、boolean、char」の8種類だけ。

これらは「変数の型」というもので、データが整数なのか、小数点を含んだ数字なのかなどを宣言するものだった。

だけどStringはプリミティブ型じゃなくて参照型に含まれる。

要は、プリミティブ型以外のものは全部参照型ということ。

何を参照するかというと、オブジェクトを参照。

 

参照型とは

 

英語ではreference(=参照) typeと呼ばれるもの。

プリミティブデータ型以外のものがこれに当たる。

参照型は、オブジェクトを参照することからこう呼ばれている。

配列クラス、Stringなどが参照型に含まれる。

配列について、まだまとめてない事があったから後日まとめよう・・・。

配列についてまとめなおしたものは以下参照。
【Javaプログラミング】配列の復習 多次元配列について プロショvol.48

 

プリミティブ型と参照型の違い

 

両者には明確な違いがいくつかある。

  1. 参照型はメソッドを呼び出すことが可能だが、プリミティブ型はできない
    プリミティブ型は「int A=5;」など、データを定義することはできる
    メソッドなどが「int A=5;」という値を参照することはあっても、「int A=5;」がメソッドを呼び出すのではない。
  2. プリミティブ型は値を常に持っているのに対し、参照型はnull(データが空っぽ)をいれることが可能
    プリミティブ型は「int A=5;」など「5」といった特定の値を持つことが必要。
    「0」という数字も含めて、何かしらのデータを持っている必要がある。一方でStringは「””(ダブルクォーテーション)」の中身にデータを入力しないことで、データなしとすることが可能。
    int A=5; ⇒ Aは5
    String AB=””; ⇒ 「”」の中にスペースすら入っていないのにエラーなし。ただし出力しても何もデータが表示されないだけ。
  3. プリミティブ型はデータのサイズがあり、変数の型によってそれぞれサイズが違う
    参照型は同じサイズ

    データサイズについてはまたいつかの機会に・・・。

    プリミティブ型はすでにJavaで定義されている。

    intだったら、すでに用意されている「-2,147,483,648から2,147,483,647」の数字の中のどれかを使用することになる。doubleやbyteなど、ほかの変数の型でも同じことで、変数の型はすでに決められている範囲での整数もしくは小数点を使用できる。

    方や参照型は私たちが自分でどんなデータを入れるか、または入れないかなど自由に決めることができる。

プリミティブ型と参照型は以上の点が主に大きく異なる。

プリミティブ型は8個!

最後に

 

データの型についてまとめてみたけど、自分でもちゃんと理解できているのかまだ疑問なところがある。

また学習を進めていってどんどん修正を加えて行ったり書き直しをしていこうと思う。

 

 

 

このエントリーをはてなブックマークに追加

コメント

タイトルとURLをコピーしました