예제 8월 26일 주소록 만들기
2009. 8. 26. 10:12
주소록 모델 설계
package net.jeongsam.jusorok; /** * 주소록 데이터 저장용 빈 * @author 정승용 * */ public class JusorokData { private int num; private String name; private String telNum; /** * Getter * get메서드이름 : * 멤버 변수의 값을 읽음. * 메서드 이름은 Camel 표기법을 따를 것. * 리턴 타입은 멤버 변수의 타입과 일치 시킬 것. * @return 주소록 번호 */ public int getNum() { return num; } /** * Setter * set메서드이름 : * 멤버 변수에 값을 저장. * 메서드 이름은 Camel 표기법을 따를 것. * 리턴 타입은 항상 void이며 매개변수로 멤버 변수와 동일한 타입 변수 선언. * @param num 주소록 번호 */ public void setNum(int num) { this.num = num; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getTelNum() { return telNum; } public void setTelNum(String telNum) { this.telNum = telNum; } }
주소록 manager 클래스 설계
package net.jeongsam.jusorok; import java.util.ArrayList; public class JusorokMgr { private ArrayListjusorokDB; public JusorokMgr() { jusorokDB = new ArrayList (); } public void addItem(JusorokData item) { // TODO 주소록을 추가 } public JusorokData getItem(int num) { // TODO 해당 번호 주소록 리턴 return null; } public void removeItem(int num) { // TODO 번호에 해당하는 주소록 삭제 } public ArrayList getListItem() { // TODO 주소록 목록을 리턴 return null; } private int searchItem(int num) { // TODO 번호에 해당하는 주소록 찾기 return 0; } }
완성된 주소록 manager 소스코드
package net.jeongsam.jusorok; import java.util.ArrayList; public class JusorokMgr { private ArrayListjusorokDB; public JusorokMgr() { jusorokDB = new ArrayList (); } public void addItem(JusorokData item) { jusorokDB.add(item); } public JusorokData getItem(int num) { return jusorokDB.get(searchItem(num)); } public void removeItem(int num) { jusorokDB.remove(searchItem(num)); } public ArrayList getListItem() { return jusorokDB; } private int searchItem(int num) { int index = -1; for (int i = 0; i < jusorokDB.size(); i++) { if (num == jusorokDB.get(i).getNum()) { index = i; } } return index; } public static void main(String[] args) { JusorokMgr mgr = new JusorokMgr(); JusorokData item = new JusorokData(); item.setNum(1); item.setName("홍길동"); item.setTelNum("123-123"); mgr.addItem(item); for (JusorokData e : mgr.getListItem()) { System.out.println(e.getNum()); System.out.println(e.getName()); System.out.println(e.getTelNum()); } System.out.println(mgr.searchItem(1)); mgr.removeItem(1); System.out.println(mgr.searchItem(1)); } }