我是編程的新手,現在我有一個關於變量和屬性的問題:「聲明公共變量和公共屬性有什麼區別?」。任何人都可以用一些例子解釋我嗎?我有一個關於變量和屬性的查詢
0
A
回答
0
很多人對什麼是「正確」的方式有不同的看法,只是不同的編碼標準。就我個人而言,我認爲公共屬性會給你更多的控制權,因爲在get或set方法中可以有一些簡單的邏輯。如果你只是想要一些快速的全局變量,那麼公共財產很好。
在.net中有一些實例,如果您必須具有屬性而不是公共變量,例如通常當綁定到數據源等
更多信息檢查此鏈接:
0
要澄清一點的是什麼約翰說,屬性可以限制和邏輯添加到你在做什麼。
例如,如果我有一個矩形類
class Rectangle
{
private float mWidth;
private float mHeight;
private float mArea;
public float width
{
get
{
return mWidth;
}
set
{
mWidth = value;
mArea = mHeight*mWidth;
}
}
public float height
{
get
{
return mHeight;
}
set
{
mHeight = value;
mArea = mHeight*mWidth;
}
}
public float area()
{
return mArea;
}
}
所以rect.width + = 20; 將更新寬度和麪積;
顯然,這是一個愚蠢的例子,但你可以這樣做沒有寬度和高度的屬性,使用公共變量來代替,而不是僅僅使用
public float area
{
get
{
return width*height;
}
}
如果你說這會給你正確的區域float x = rect.area,但不會讓你說出像rect.area = 40的東西。
還有很多更深入的東西,你可以用屬性來做,比如數據綁定,但是如果你只是開始編程,你會在稍後看到。
就目前而言,您可以將屬性視爲一種不需要()並且可以接受或給出變量的方便方法。
如果它沒有做任何事情,但獲取和設置,它可能更好作爲一個變量。
如果它做了很多的內部工作,並影響到你的班級的相當一部分,它應該可能是一種方法。
如果它是一個快速的功能 驗證輸入(浮動旋轉{集合{mRotation =值%360;}})! 或多個校驗輸出(布爾isInMotion {{返回(isTurning & & isMoving) }} propertys工作。
沒有什麼規則是最後一門課程的。
我希望這給你的屬性VS變量的一個基本的瞭解,雖然一如既往有很多東西要學。
好魯CK!
相關問題
- 1. 關於具有多個屬性的Cassandra java BoundStatement的查詢
- 2. 基於子屬性的關聯查詢
- 3. 關於超類屬性的Hibernate查詢
- 4. 關於siteminder響應屬性的查詢
- 5. 有一個類屬性值的變量?
- 6. SQLAlchemy的:通過查詢變量屬性
- 7. 關於在C++中的屬性向量的查詢
- 8. jQuery的$變量檢查屬性等於
- 9. 關於屬性名稱SimpleDB查詢
- 10. 查詢只使用關係沒有一個給定的屬性
- 11. 在XQuery中插入一個查詢變量作爲屬性
- 12. 複製一個屬性到一個變量,屬性被改變
- 13. SQL子查詢什麼有我有一個關於這個SQL查詢問題的最佳性能
- 14. 訪問屬性時,我有它的名稱在一個變量
- 15. as3代碼中的簡單問題,關於屬性和變量
- 16. QueryDSL:查詢關係和屬性
- 17. 與一個變量和許多其他變量的相關性
- 18. Android sqllite,查詢屬於另一個對象屬性的對象
- 19. 查詢(M:N)由關係有序屬性
- 20. XPath查詢如何讓基於兩個屬性的一個屬性的值
- 21. 構建一個擁有和屬於多個查詢
- 22. Neo4j查詢關係屬性
- 23. 關鍵非屬性查詢
- 24. MySQL查詢一個變量
- 25. 查詢一個$變量
- 26. SQL查詢與基於關係中的另一個屬性的值在多個元組的屬性
- 27. 我有關於TeamSpeak3的查詢
- 28. 關於WPF的一個屬性問題
- 29. 關於終點的一個屬性
- 30. 連接查詢關於關聯表的屬性
是否有您所指的特定語言? – 2012-03-13 07:11:04
http:// stackoverflow。com/questions/379041 /使用公共領域和無數其他方法的最佳做法,搜索「公共領域vs財產」或沿着這些方向的任何內容 – Henry 2012-03-13 07:11:38
@Adam Reed我正在使用C# – 2012-03-13 07:35:20