自從我瞭解面向對象編程的時候,我就有了這個問題。現在,我想到了一個很好的論壇。關於面向對象的問題
假設我們正在實施一個使用EJB的員工管理應用程序。
現在,有兩種方法可以做到這一點。
通常,我們創建實體(POJO),這些實體代表僱員。然後我們通過添加,刪除,更新,檢索,檢索所有方法創建一個EJB接口'EmployeeManager'。這樣我可以使用'員工'實體作爲數據傳輸對象。
我們稱EJB接口本身爲'Employee'。可以將實現稱爲'EmployeeImpl',其具有字段以及方法實現(添加,刪除,更新,檢索,檢索全部)。如果我在業務邏輯需要訪問員工詳細信息時使用分層方法,則需要傳遞'EmployeeImpl'(因爲它包含值)。
你認爲哪一個更好?
我更喜歡第一個,因爲它看起來很好,不會覺得尷尬。像
EmployeeMgr empMgr = // JNDI lookup;
Employee emp = new Employee();
empMgr.add(emp);
Employee employees[] = empMgr.retrieveAll();
凡爲第二個看起來像(雖然我不知道),
Employee emp = // JNDI lookup;
emp.setName(); //set the properties
emp.add();
Employee employees[] = emp.retrieveAll();
正如你所看到的,第二個看起來很笨拙。
我請你們在這方面給我提意見。
感謝 饅頭