OR
誰でも自由に記事を投稿・編集できるオープンリファレンス
記事ID:686
区分:プログラム  |  分類:Java  |  最終更新日:2015/09/02
クリエイティブ・コモンズ 表示-継承ライセンス 2.1
【Java】変数
関連タグ:Java, メンバ変数, ローカル変数, スコープ
このエントリーをはてなブックマークに追加      
本文
履歴
編集
閲覧数: 2,160
Java関連技術まとめ > 【Java】変数

プログラムでデータを扱う際、どんな言語でも必ず使用するのが変数です。変数はよく箱などの入れ物に例えられたりしますが、データを一時的に保管し、必要なときに取り出せる機能を持ちます。

 

変数の宣言

Javaの変数は使用の前に必ず宣言してから使用します。宣言されていない変数をプログラム内で使用した場合はコンパイルエラーとなります。変数の宣言は以下の方法で行います。

 

データ型 変数名;

【例】

int i;
double d e f;

 

上記例ではint型変数「i」とdouble型変数「d」「e」「f」を宣言しています。

変数は例のように同じ型であれば、半角スペースを空けて連続して宣言することもできます。

データ型

Javaの変数には複数の型が存在し、格納するデータに合わせて適切にその型を使い分ける必要があります。データ型は大別して数値型、文字型、bool型がありますが、数値型はさらに整数型、浮動小数点型にわけることができます。

 

タイプサイズ格納できる値の範囲
数値型整数型 byte 8bit -128~127
short 16bit -32768~32767
int 32bit -2147483648~2147483647
long 64bit -9223372036854775808~9223372036854775807
浮動小数点型 float 32bit ±3.40282347E+38~±1.40239846E-45
double 64bit ±1.79769313486231570E+308 ~ ±4.94065645841246544E-324
文字型 char 16bit \u0000~\uFFFF(Unicode文字)
bool型 boolean 1bit trueまたはfalse

スコープ

スコープとは宣言した変数の使用できる範囲のことです。対象の変数がメンバ変数かローカル変数かによってまずその範囲は大別されます。メンバ変数とはクラスに属する変数であり、その範囲(スコープ)はクラス全体となります。対してローカル変数とはクラス内の特定のメソッドまたはコンストラクタに属する変数であり、その範囲(スコープ)は変数の宣言された位置のコードブロック内のみとなります。コードブロックとはプログラム内の「{}」で囲われた範囲のことを指します。

以下の例では3つの変数「a, b, c」を宣言していますが、それぞれ使用できる(参照できる)範囲は異なります。

 

//sampleクラス
class sample {

    int a = 1;            //変数a:メンバ変数

    //mainメソッド
    public static void main(String[] args) {

        int b = 2;        //変数b:ローカル変数

        if (a == 1) {
            int c = 3;    //変数c:ローカル変数
        }
    }
}

上記サンプルで宣言された各変数のスコープは以下になります。

 

変数タイプスコープ
a メンバ変数 sampleクラス内全て
b ローカル変数 mainメソッド内のみ
c ローカル変数 ifブロック内のみ

 

なお、同一スコープ内で同じ名前の変数を宣言することはできません。

関連記事
関連記事はありません。
外部リンク
外部リンクはありません。
- 記事検索 -