2013-01-04 176 views
9

我也看到其他條款:實體對象,價值對象等。是否有其他條款我應該知道,這些術語是指什麼?類,對象,實體:有什麼區別?

它們之間的差異是否可以通過閱讀代碼來識別?

+1

http://en.wikipedia.org/wiki/Object-oriented_programming – SLaks

+0

它應該取決於您使用的平臺/語言。 –

回答

0

通常,一個類是一個構造,它定義了一組屬性和方法/函數,而Object是在運行時創建的類的實際實例。

Sample類定義:

public class Example{ 

... 

} 

下面創建的實施例類在運行時對象的實例;

new Example(); 
13

一個類是創建對象的模板。並非所有的OO語言都使用類(參見Self,Javascript)。通常,類是作爲對象實現的。

一個對象是一個與那些作用於該數據的函數(稱爲方法)打包在一起的數據包。調用類的構造函數爲對象分配內存並初始化其成員變量。

實體是表示具有系統有興趣跟蹤的標識的對象。典型的例子是客戶和賬戶。

值對象是一個值,它沒有標識,並且具有相同值的兩個實例被認爲是相同的。典型的例子是貨幣金額,地點,付款類型。

數據傳輸對象用於傳遞大量數據。通常,它們用於分佈式系統以將數據作爲捆綁包發送以避免重複的網絡呼叫。數據傳輸對象沒有身份(或者沒有期望他們應該有),它們只是數據的容器。

一般來說,你可以告訴實體和值對象之間的差異,因爲實體具有可識別的身份,以及該系統涉及創建它們,將它們存儲,並改變它們。在對象映射到某個數據庫的情況下,實體具有主鍵,這些主鍵可能是某種組合自然鍵或人工鍵,而值對象則按值進行比較。

相關問題