Javaチュートリアル

Javaホーム Javaイントロ Javaはじめに Java構文 Javaコメント Java変数 Javaデータ型 Java型キャスト Java演算子 Java文字列 Java数学 Javaブール値 Java If ... Else Javaスイッチ JavaWhileループ JavaForループ Javaブレーク/続行 Java配列

Javaメソッド

Javaメソッド Javaメソッドパラメータ Javaメソッドのオーバーロード Javaスコープ Java再帰

Javaクラス

Java OOP Javaクラス/オブジェクト Javaクラス属性 Javaクラスメソッド Javaコンストラクタ Java修飾子 Javaカプセル化 Javaパッケージ/ API Javaの継承 Javaポリモーフィズム Java内部クラス Java抽象化 Javaインターフェイス Java列挙型 Javaユーザー入力 Java日付 Java ArrayList Java LinkedList Java HashMap Java HashSet Javaイテレータ Javaラッパークラス Javaの例外 Java RegEx Javaスレッド Javaラムダ

Javaファイル処理

Javaファイル Javaのファイルの作成/書き込み Java読み取りファイル Javaファイルの削除

Javaハウツー

2つの数字を追加する

Javaリファレンス

Javaキーワード Java文字列メソッド Java数学メソッド

Javaの例

Javaの例 Javaコンパイラ Java演習 Javaクイズ Java証明書


Javaクラス属性


Javaクラス属性

前の章ではx、例で「変数」という用語を使用しました(以下を参照)。これは実際に はクラスの属性です。または、クラス属性はクラス内の変数であると言うことができます。

Main2つの属性を持つ""というクラスを作成します:xy

public class Main {
  int x = 5;
  int y = 3;
}

クラス属性の別の用語はフィールドです。


属性へのアクセス

.クラスのオブジェクトを作成し、ドット構文( )を使用して、属性にアクセスできます。

Main次の例では、という名前のクラスのオブジェクトを作成しますmyObjx オブジェクトの属性を使用して、その値を出力します。

""というオブジェクトを作成し、myObjの値を出力します。x

public class Main {
  int x = 5;

  public static void main(String[] args) {
    Main myObj = new Main();
    System.out.println(myObj.x);
  }
}


属性を変更する

属性値を変更することもできます。

の値xを40に設定します。

public class Main {
  int x;

  public static void main(String[] args) {
    Main myObj = new Main();
    myObj.x = 40;
    System.out.println(myObj.x);
  }
}

または、既存の値を上書きします。

の値xを25に変更します。

public class Main {
  int x = 10;

  public static void main(String[] args) {
    Main myObj = new Main();
    myObj.x = 25; // x is now 25
    System.out.println(myObj.x);
  }
}

既存の値をオーバーライドする機能が必要ない場合は、属性を次のように宣言しますfinal

public class Main {
  final int x = 10;

  public static void main(String[] args) {
    Main myObj = new Main();
    myObj.x = 25; // will generate an error: cannot assign a value to a final variable
    System.out.println(myObj.x);
  }
}

このfinalキーワードは、PI(3.14159 ...)のように、変数に常に同じ値を格納する場合に役立ちます。

finalキーワードは「修飾子」と呼ばれますこれらの詳細については、Java修飾子の章を参照してください。



複数のオブジェクト

1つのクラスの複数のオブジェクトを作成する場合、他のオブジェクトの属性値に影響を与えることなく、1つのオブジェクトの属性値を変更できます。

の値xを25に変更しmyObj2、変更xしないでmyObj1ください。

public class Main {
  int x = 5;

  public static void main(String[] args) {
    Main myObj1 = new Main();  // Object 1
    Main myObj2 = new Main();  // Object 2
    myObj2.x = 25;
    System.out.println(myObj1.x);  // Outputs 5
    System.out.println(myObj2.x);  // Outputs 25
  }
}


複数の属性

必要な数の属性を指定できます。

public class Main {
  String fname = "John";
  String lname = "Doe";
  int age = 24;

  public static void main(String[] args) {
    Main myObj = new Main();
    System.out.println("Name: " + myObj.fname + " " + myObj.lname);
    System.out.println("Age: " + myObj.age);
  }
}

次の章では、クラスメソッドを作成する方法と、オブジェクトを使用してそれらにアクセスする方法について説明します。