Javaにおけるクラスの宣言
Student.java
class Student {
// フィールドの宣言
// String型のnameを宣言
String name;
// int型のscoreを宣言
int score;
// int型のクラス定数を宣言
static final int MAX_SCORE = 100;
}
class Takashi {
// static修飾子は クラス名.メンバー名 でアクセスできる
int mathScore = Student.MAX_SCORE;
}
クラスを定義する
SampleClass.java
public class SampleClass { // クラス名
private String name = "Sample"; // フィールド名 (iOS:プロパティ)
public String action() { // メソッド名
return name + "> " + "Action";
}
}
クラスに指定できる修飾子について
修飾子 | 使い方 |
---|---|
public | 他のあらゆるクラスから参照可能 |
指定なし | 同一パッケージ内のクラスから参照可能 |
フィールド、メソッドに指定できる修飾子について
修飾子 | 使い方 |
---|---|
public | 他のあらゆるクラスから参照可能 |
protected | 子クラスおよび同一パッケージ内のクラスから参照可能 |
指定なし | 同一パッケージ内のクラスから参照可能 |
private | 自クラス内部のみアクセス可能 |
その他のよく使う修飾子
static修飾子
static修飾子はインスタンスを生成しなくとも呼び出せるメソッドやフィールドを定義できる。
static修飾子をつけたフィールドやメソッドをクラスメンバ
と呼び、インスタンスを生成しなくても呼び出すことができる。
クラスメンバーの使い方は 「クラス名.クラスメンバ」で呼び出せる。
StaticTest.java
public class StaticTest {
// クラスフィールド
static String staticField = "World";
// クラスメソッド
static String staticMethod() {
return "yes!";
}
// インスタンスフィールド
String instanceField = "Hello";
// インスタンスメソッド
String instanceMethod() {
return instanceField + " " + staticField + " " + staticMethod();
}
}
使い方は
StaticTestMain.java
public class StaticTestMain {
public static void main(String... args) {
System.out.print(StaticTest.staticField);
System.out.print(StaticTest.staticMethod());
StaticTest.staticField = "Japan";
System.out.print(StaticTest.staticField);
StaticTest test = new StaticTest();
System.out.print(test.staticField);
System.out.print(test.staticMethod());
System.out.print(test.instanceMethod());
}
}
final 修飾子
final 修飾子は変数を変更不可にするための修飾子。
宣言方法
FinalTest.java
public class FinalTest {
// クラス定数
static final String GREETING_MESSAGE = "Hello";
}
使い方
StaticTestMain.java
public class StaticTestMain {
public static void main(String... args) {
System.out.print(FinalTest.GREETING_MESSAGE);
}
}
非常に勉強になりました。
早くAndroid開発におけるデザインパターンまで勉強を進めたいと思います。