1:다 관계 객체 활용
- 하나의 객체 안에 여러개의 객체들을 사용할 수 있는 형태의 데이터 구조 처리를 말한다.
- 실무적인 예
1) 쇼핑몰 회원 관리
2) 쇼핑몰 판매 제품 관리
3) 컴퓨터 속 여러 부품
4) 하나의 반에 소속된 학생들
- 처리순서
1) 포함될 여러 객체들의 단일 유형 클래스 선언 (필드, 생성자, 메서드)
2) 포함할 클래스 선언
1) 필드 - 고유필드
2) 필드 - 동적 배열 형태의 클래스 선언
3) 생성자 - 고유필드 초기화, 동적배열형태 초기화
4) 추가등록 메서드
- 하나씩 추가
- 다중으로 추가
5) 정보출력 메서드
- 기본정보 출력
- ArrayList 출력
class ShoppingMall{ // 포함할 클래스 생성
private String name; // 고유필드
private ArrayList<Member> mlist; //동적 배열 형태 필드
public ShoppingMall(String name){ //생성자로 초기화
this.name = name;
this.mlist = new ArrayList<Member>();
}
public void update(Member m){ //하나씩 추가 등록
this.mlist.add(m);
System.out.println(m.getId()+"회원 추가되었습니다.");
}
public void updateAll(ArrayList<Member> list){
//동적배열 활용하여 다중 추가
this.mlist.addAll(list);
System.out.println(list.size()+"명 회원추가");
}
public void showAll(){ // 정보 출력 메서드
System.out.println("# "+this.name+" 쇼핑몰 회원 #"); //기본 정보 출력
if(this.mlist.size()>0){ // 동적 배열 출력
for(int i=0; i<mlist.size(); i++){
Member m = Member.get(i);
System.out.println("아이디: "+m.getId());
System.out.println("회원명: "+m.getName());
System.out.println("포인트: "+m.getPoint());
}
}
}
}
class Member{ // 포함될 여러 객체 중 단일 유형의 클래스 생성
private String id;
private String name;
private int point;
public Memver(String id, String name, int point){
this.id = id;
this.name = name;
this.point = point;
}
public String getId() {
return id;
}
public String getName() {
return name;
}
public int getPoint() {
return point;
}
}