忍者ブログ
[69] [68] [67] [66] [65] [64] [63] [62] [61] [60] [59]

DATE : 2017/09/20 (Wed)
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


DATE : 2006/05/29 (Mon)

プロパティの定義方法

以下の形式のメソッドを定義すると、プロパティを定義できます。

なお、<PropertyType> はプロパティの型、<PropertyName> はプロパティ名です。また、設定用のメソッドの引数名は自由です。

メソッドに書くプロパティ名の先頭は大文字です。

読み取り用 public <PropertyType> get<PropertyName>()
書き込み用 public void set<PropertyName>(<PropertyType> arg)

上記のメソッドを両方定義すると、読み取り書き込み可能 (read-write) プロパティ、前者しかない場合は読み取り専用 (read-only) プロパティ、後者しかない場合は書き込み専用 (write-only) プロパティになります。

なお、<PropertyType> が boolean 型の場合は、以下の形式でもプロパティが定義されます。

読み取り用 public <PropertyType> is<PropertyName>()
書き込み用 public void set<PropertyName>(<PropertyType> arg)

読み取り用のメソッド名の先頭が get から is に変わっただけです。

プロパティの定義の例を以下に示します。

(import 宣言やメソッドの中身などは省略)

// date プロパティ(読み出し書き込み可能)

public Date getDate() { ... }
public void setDate(Date date) { ... }

// age プロパティ(読み出し専用)

public int getAge() { ... }

// list プロパティ(書き込み専用)

public void setList(List list) { ... }

// human プロパティ(読み出し専用)

public boolean isHuman() { ... }

なお、メソッドの中身は自由です。つまり、そのプロパティに相当するフィールドの値を操作してもよいですし、他の値を操作しても問題ありません。

プロパティ名

上の例で見たように、メソッド名には get や is の直後の文字を大文字で書きます。しかし、実際のプロパティ名は、その文字を小文字にした文字列となります。

例えば、getHoge のプロパティ名は hoge となります。

ただし、getURL などの、get や is の直後の次の文字も大文字の場合は、直後の文字は小文字に変わりません。

つまり、getURL のプロパティ名は URL となります。

参考文献

PR
●この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
●この記事へのトラックバック
この記事にトラックバックする:
忍者ブログ [PR]
ブログ内検索
最近の状況
リンク
カレンダー
08 2017/09 10
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
使用許諾
最新コメント
(08/15)
(05/04)
(03/06)
(03/04)
(09/25)
最新トラックバック
T/O
(11/05)
ブログ内検索
最近の状況
リンク
カレンダー
08 2017/09 10
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
使用許諾
最新コメント
(08/15)
(05/04)
(03/06)
(03/04)
(09/25)
最新トラックバック
T/O
(11/05)