2008-10-03 17 views

回答

6

這是一個完全主觀的問題。沒有「更好」的方法。

一種方法是:

private int _x; 
public get x():int { return _x; } 
public set x(int val):void { _x = val; } 

另一個原因是:

private int x; 
public get X():int { return x; } 
public set X(int val):void { x = val; } 

也不是正確的答案。每個人都有風格的優點和缺點。選擇一個你最喜歡的,並一致地應用它。

1

在區分大小寫的語言,我只是用:

private int myValue; 

public int MyValue 
{ 
    get { return myValue; } 
} 

否則我會用下劃線

Private _myValue As Integer 

Public ReadOnly Property MyValue As Integer 
    Get 
     Return _myValue 
    End Get 
End Property 
+0

看起來不錯,但在actionscript(我的主要語言)中,除非是類名或構造函數(您可以,您不這樣做),否則絕不會使用大寫字母來啓動函數或變量。 – Iain 2008-10-03 23:10:13

+0

在這種情況下,我可能會使用_myValue作爲變量,myValue作爲屬性名稱。 – 2008-10-03 23:12:11

1

有因爲有程序員這樣做這樣做的幾乎一樣多不同的方式,但一些比較流行的方式包括(爲屬性Foo):

  • μF的OO
  • m_foo
  • _foo
3

,在Java中this.foo在蟒蛇有self.foo和其他語言有類似的事情,所以我不認爲有必要命名當我已經可以使用一種語言結構時,可以採取特殊的方式。在同樣的情況下,好的IDE和編輯器會理解成員變量並給它們一個特別的亮點,所以你可以真正看到它使用特殊的名字。

6

我喜歡用下劃線爲前綴字段,正如其他人所提到的。

private int _x; 

我認爲這超出了直接的個人喜好,但(如大衛·阿諾在這個線程說的)。我認爲這樣做有一些真正的客觀原因:

  1. 這意味着您不必爲作業(特別是在setters和構造函數中)編寫「this.x = x」。
  2. 它區分你的領域從您的本地變量/參數。這麼做很重要:與當地人相比,領域處理起來更爲棘手,因爲他們的範圍更廣,壽命更長。添加額外字符對於編碼人員來說是一個精神警告標誌。
  3. 在某些IDE中,下劃線將導致自動完成將字段排序到建議列表的頂部。這使得更容易在一個塊中查看該類的所有字段。這反過來可能會有所幫助;在大類中,您可能無法在與您正在使用的代碼相同的屏幕上看到字段(通常在類的頂部定義)。將它們排序到頂部可以提供方便的參考。

(這些約定的Java,但對於其他語言也存在類似的)

這些東西看起來小,但他們的患病率絕對會讓當我編碼我的生活更輕鬆。

1

I like writing「this.x = x」。這對我來說很清楚。另外,使用Eclipse時,可以通過這種方式自動生成getter/setter。

相關問題