プログラミング Java

【Java入門】クラスとインスタンスの違いを分かり易い言葉で説明します。

投稿日:

概要

クラスとインスタンスの違いについて、できるだけ分かり易い言葉や表現で説明します。
 

クラス

設計書だよ
以上です。
ほんとマジで。

どんなデータと操作が可能かを決めているだけなので設計書と表現しています。
 

インスタンス

設計書から作られた実際に中身があるものだよ。
インスタンスが生成されたら、メモリのどこかに作られて操作可能になります。
 

ここからはちょっと小難しい話になりますが、図でできるだけわかり易く説明するようにしてみます。

扇風機クラス

扇風機は商品名、商品番号が情報として持っているよ。
また、タイマーと強弱の設定を機能として持っているよ。
クラスではそれらを決めているよ。
 

インスタンスを作る

2個の扇風機を作るよ。
 商品名 :小型扇風機
 商品番号:1234567890、1234567891
 タイマー、強弱機能を取り付け
 

newした後は、以下の図のように変数がアドレスでインスタンスを参照するようになります。

nullを代入する

インスタンスにnullを代入すると、インスタンスが無くなるのではなく、インスタンスを参照するアドレスが消えるので、インスタンスが無くなったように見えます。

 

まとめ

  • クラスは設計図だよ。
  • インスタンスは実際に作られたものだよ。
  • インスタンスはアドレスで参照しているよ。
  • null代入したらアドレスが消えるだけでインスタンスは残るよ。

 
最後までお読み頂き、ありがとうございました!
ご意見・ご要望がありましたら、遠慮なくコメント下さい!
もし内容が良かったらランキング評価を頂けると励みになります(^^)

ランキング評価する

-プログラミング, Java
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

【Java】Stringのequalsで定数を左側にする理由

JavaのStringでequalsによる等価判定を行う場合に、 比較対象となる定数は左側にする理由はNullPointerExceptionを回避するためです。 以降、NullPointerExce …

結城浩氏のPrototypeパターン 練習課題6-1の回答例

結城浩氏著作「Java言語で学ぶデザインパターン入門」 Prototypeパターン 練習課題6-1の回答例です。 課題の概要 UnderLinePen、MessageBoxクラスのcreateClon …

【Java】オブジェクト指向の練習題材(会計オブジェクト)

前回記事、オブジェクト指向とは何なのかを簡単に説明してみるの練習題材です。 ここでは3つのオブジェクトを作成していきます。 – 会計オブジェクト:会計金額の算出 – 請求書オブ …

オブジェクト指向でじゃんけんを作ってみる

最近、プログラム自体を書いていない時間を多いので、再勉強がてら少しコードを書いてみました。 何を作ったか? テーマ:じゃんけん(1対1) 言語:Java OOPで考慮したこと ・ゲームを管理するコント …

【SpringBoot入門】#5~ 登録画面の作成

概要 共通ヘッダーの「新規登録」リンクから遷移する、書籍情報登録画面を作成します。 遷移できるようにControllerの作成と、遷移先である画面をHTMLで作成していきます。   Formクラスの作 …

SpringFramworkの良書

■おすすめ教材
Javaの基本を学んだ人が、次のステップとして読む本(中級者向け)

※SpringはJavaのFrameworkの1つです。
変更のしやすさ、保守性の高さが特徴です。