プログラミング Java

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

投稿日:

概要

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

クラス

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

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

インスタンス

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

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

扇風機クラス

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

インスタンスを作る

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

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

nullを代入する

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

 

まとめ

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

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

ランキング評価する

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

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

【Javaサンプル】自動販売機(Level2) メソッドに小さく分割する

前回の自動販売機(Level1)では、まず動くものを作りました。 そこでは1つのメソッド(Main)にすべてをコーディングしていましたが、 これを機能ごとに分割していきます。 実際の仕事では、1つの大 …

【Java入門】プロジェクトの作成からHello, World!まで

概要 プログラミングの入門といえば「Hello, World!」です。 まずは最も簡単なプログラムを動かすことから始めていきましょう。   プロジェクトの作成 新規プロジェクト作成 新規で「Javaプ …

【Java入門】インターフェースの使い方まとめ

概要 インターフェースとは、内部実装を知る必要なく、利用する機能の接点のみを提供する仕組みです。 接点をソフトウェア的にいうと、メソッドのシグネチャと戻り値の型に当たります。 つまり、どんなメソッドに …

【Bootstrap】入力フォームを作成しよう!

概要 SpringBootチュートリアルで作成した各画面の入力フォームをBootstrapに置き換えます。 また、containerを使用することで容易にグリッドシステムを導入できます。 実装 検索画 …

CSV/TSVデータを作成するVBAツールを公開

【追記:2020年8月1日】 UTF-8(BOM無し)に対応しました。 業務でテスト用のCSVファイルを作成することがよくあるので、自分でツールを作成しました。 TSVにも対応しています。 基本仕様 …

記事を探す

SpringFramworkの良書

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

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