我總是有一個問題需要設計一個類,其中正確的方法調用對程序員來說是清楚的,並且在數據之前沒有執行某種方法的危險,變量是通過其他方法設置的。所以我通常使用標誌和if語句是安全的:如何確保方法按正確的順序執行?
class foo {
boolean isInitialised = FALSE;
boolean isSthDone = FALSE;
float importantData;
public void initialise {
...
isInitialised = TRUE;
}
public void doSth1 {
if (isInitialised) {
importantData = 2134234;
} ...
isSthDone = TRUE;
}
public void doSth2 {
if (isInitialised && isSthDone1) {
...
}
}
}
這種設計不會給任何線索,怎麼算法應該使用 - 這方法應該是先執行,沒有任何設計模式的這種問題?
這是在Java嗎? C#? – Crisfole 2011-03-10 17:54:38
它被稱爲「設計你的對象在施工後處於有效狀態」模式。 – ChaosPandion 2011-03-10 17:55:52
@featon - 這是什麼混亂的代碼?如果您希望任何人尊重您,至少讓您的示例始終遵循相同的基本語法。另外它也不會傷害檢查你的拼寫。 – ChaosPandion 2011-03-10 18:00:15