Blacky Blog

外資系IT企業でエンジニアをしています。 ここでは自分が読んだ本、勉強していることなど None Tech の情報を発信しています。

IT プログラミング

[初心者向け] Java 独学: 4. オブジェクト指向: メンバー変数

投稿日:6月 3, 2019 更新日:

みなさん、こんにちわ。

このシリーズは、Java を独学で学んでいただける方法で、初心者でも開発者としてのベースの知識ができます。実際に手を動かせるよう環境設定の方法も載せています。Java のサイトや本を読んで学んだだけの方でも、挫折せず、自分で手を動かせるような構成にしていますのでおすすめの方法です。

CodeCampGATE

[初心者向け] Java 独学: 4. オブジェクト指向: メンバー変数

前回の記事では、クラスについて紹介しました。

今回はクラスのメンバー変数について紹介します。

public class Car
{
    private String model = null;
    private String nextValidatedate = null;
    private String owner = null;
...

メンバー変数とは、クラスが保持する変数です。今回のサンプルを例にすると、Car クラスのメンバー変数は、モデル、次回の車検日、オーナーの 3 つです。

メンバー変数の範囲

メンバー変数を定義する際に、どの範囲でメンバー変数を操作できるか指定します。

    private String model = null;

private は、このクラスの中からしか操作できないということです。

わかりやすいように、前回のサンプルで Car クラスのコンストラクタを実行したインスタンスのあとにドット(.) を入力して見てください。

するとわさわさとこのクラスで操作できる関数とメンバー変数が出てきますが、private になっているmodel は出てきませんね。そのため、model に値を設定したり取得しりするには、SetModel や GetModel といった関数を使って操作します。

その証拠に、SetModel 関数では、引数に渡された文字列を、クラスのメンバーである、model に設定しています。また、GetModel は、クラスのメンバー変数の model の値を返しています。

    public void SetModel(String model)
    {
        this.model = model;
    };
   public String GetModel()
    {
        return this.model;
    };

ちなみに、”this” というのは、このクラスの中のメンバーという意味だと思ってください。this.model はこのクラスのメンバー変数の model のことで、SetModel の引数の model ではありません。わざと変数名を一緒にしていますが、this を付けることでクラスのメンバー変数を明示しています。

一方、次に Car クラスの model を public にしてみてください。 

すると、以下の通り、インスタンスからアクセスできるようになりました。

public にすると、直接メンバー変数に値を設定したり読み取ったりできるようになります。

できることは同じだけど、 メンバー変数 を private にして関数を用意するのと、メンバー変数を public にして直接操作できるようにする方法の2種類の書き方があるわけです。

では、どのように使い分けるかについては、もう一つのメンバー関数を説明してから解説したいと思います。事前のお知らせしておくとカプセル化という考え方が重要になります。

まとめ

今回は、クラスのメンバー変数の定義の仕方と、方法を紹介しました。

次回は、クラスのメンバー関数について紹介します。

CodeCampGATE

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

執筆者:


comment

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

関連記事

[初心者向け] Java 独学: 2. データ型、変数、式を理解する: 配列を操作する

みなさん、こんばんわ。 このシリーズは、Java を独学で学んでいただける方法で、初心者でも開発者としてのベースの知識ができます。実際に手を動かせるよう環境設定の方法も載せています。Java のサイト …

[初心者向け] Java 独学: 1. 基礎を理解する

では最初に Java の基礎を学びます。 Java って難しいイメージないですか? [初心者向け] Java 独学: 1. 基礎を理解する このシリーズは、Java を独学で学んでいただける方法で、初 …

[初心者向け] Java 独学: はじめに

皆さんこんにちは、Blackyです。 これらからシリーズでプログラミング言語の Java を学んでいただける記事を書いていきます。Java って難しいイメージないですか? これを読めば、Java を独 …

[初心者向け] Java 独学: 4. オブジェクト指向: インスタンス化して使用する

みなさん、こんにちは。 このシリーズは、Java を独学で学んでいただける方法で、初心者でも開発者としてのベースの知識ができます。実際に手を動かせるよう環境設定の方法も載せています。Java のサイト …

[初心者向け] Java 独学: 3. フロー制御: 分岐: その 2

みなさん、こんにちは。 このシリーズは、Java を独学で学んでいただける方法で、初心者でも開発者としてのベースの知識ができます。実際に手を動かせるよう環境設定の方法も載せています。Java のサイト …