자바 에서 대상 을 대상 으로 하 는 디자인 모델 류 와 클래스 의 관 계 를 상세 하 게 설명 합 니 다.

머리말
자바 와 다른 대상 을 대상 으로 하 는 디자인 모델 에서 유형 과 유형 간 에는 주로 6 가지 관계 가 있 는데 그들 은 각각 의존,관련,집적,조합,계승,실현 이다.그들의 결합 도 는 순서대로 증가한다.
1. 의존(의존)

의존 관계 의 정 의 는 두 상대 적 으로 독립 된 대상 에 대해 한 대상 이 다른 대상 의 인 스 턴 스 를 구성 하거나 다른 대상 의 서비스 에 의존 할 때 이 두 대상 간 은 주로 의존 관계 로 나타난다.정의 가 까다 롭 고 이해 하기 어렵 지만 자바 에서 의 표현 은 비교적 직관 적 이다.클래스 A 에서 클래스 B 를 사 용 했 는데 그 중에서 클래스 B 는 클래스 A 의 방법 매개 변수,방법 중의 국부 변수,또는 정적 방법 으로 호출 되 었 다.클래스 위의 그림 에서 People 류 는 Book 류 와 Food 류 에 의존 하고 Book 류 와 Food 류 는 클래스 중의 방법의 매개 변수 형식 으로 People 류 에 나타난다.
코드 샘플:

public class People{
//Book  read     
public void read(Book book){
System.out.println(“    ”+book.getName());
}
}
2.관련(협회)
단 방향 연결:
 
양 방향 연결:

상대 적 으로 독립 된 두 대상 에 대해 한 대상 의 인 스 턴 스 와 다른 대상 의 특정한 인 스 턴 스 가 고정된 대응 관 계 를 가 질 때 이 두 대상 은 관련 관계 이다.관련 관 계 는 단 방향 관련 과 양 방향 관련 으로 나 뉜 다.자바 에서 단 방향 관련 은 클래스 A 에서 클래스 B 를 사 용 했 는데 그 중에서 클래스 B 는 클래스 A 의 구성원 변수 로 나타난다.양 방향 관련 은 클래스 A 에서 클래스 B 를 구성원 변수 로 사용 한 것 으로 나 타 났 다.동시에 클래스 B 에서 도 클래스 A 를 구성원 변수 로 사용 했다.
코드 샘플:

public class Son{
//                     
Father father = new Father();
public void getGift(){
System.out.println(“ ”+father.getName()+”    ”);
}
}
public class Father{
Son son = new Son();
public void giveGift(){
System.out.println(“  ”+son.getName()+“  ”);
}
}
3.집합(집합)

취 합 관 계 는 관련 관계 의 일종 으로 결합 도가 관련 보다 강하 다.그들의 코드 표현 은 똑 같 고 의미 적 으로 만 차이 가 있다.관련 관계 의 대상 간 은 서로 독립 되 고 취 합 관계 의 대상 간 에는 포용 관계 가 존재 하 며 그들 사 이 는'전체-개체'의 상호 관계 이다.
코드 샘플:

public class People{
Car car;
House house; 
//                 set    
public void setCar(Car car){
This.car = car;
}
public void setHouse(House house){
This.house = house;
}
public void driver(){
System.out.println(“    :”+car.getType());
}
public void sleep(){
System.out.println(“       :”+house.getAddress());
}
}
4.조합(구성)

집합 에 비해 조합 은 결합 도가 더 강 한 관련 관계 이다.조합 관계 가 존재 하 는 유형 은'전체-부분'의 관련 관 계 를 나타 내 고'전체'는'부분'의 생명 주 기 를 책임 지 며 그들 사 이 는 공생 공생 과 공생 이다.그리고'부분'이 단독으로 존재 할 때 아무런 의미 가 없다.다음 그림 의 예 에서 People 과 Soul,Body 는 조합 관계 로 사람의 생명 주기 가 시 작 될 때 영혼 과 육체 가 동시에 있어 야 한다.사람의 생명 주기 가 끝나 면 영혼 의 육체 가 사라 진다.영혼 이 든 육체 든 단독으로 존재 할 수 없 으 며 인간 의 구성 부분 으로 존재 해 야 한다.

Public class People{
Soul soul;
Body body; 
//                     
Public People(Soul soul, Body body){ 
This.soul = soul;
This.body = body;
}
Public void study(){
System.out.println(“      ”+soul.getName());
}
Public void eat(){
System.out.println(“     :”+body.getName());
}
}
5.상속(일반화)

계승 은 클래스 와 클래스(또는 인터페이스 와 인터페이스)간 의 부자 관 계 를 나타 낸다.자바 에 서 는 키워드 extends 로 계승 관 계 를 표시 합 니 다.UML 그림 에서 계승 관 계 는 실선+중 공 화살표 로 표시 하고 화살 표 는 부 류 를 가리킨다.
6.실현(구현)

하나 이상 의 인 터 페 이 스 를 실현 하 는 방법 을 나타 낸다.인 터 페 이 스 는 조작의 집합 을 정의 하고 실현 클래스 에서 인터페이스의 구체 적 인 조작 을 완성 한다.자바 에서 implements 를 사용 하여 표시 합 니 다.UML 그림 에서 관 계 를 실현 하려 면 점선+중 공 화살표 로 표시 하고 화살 표 는 인 터 페 이 스 를 가리킨다.
자바 에서 extends 키 워드 를 계승 하여 implements 키 워드 를 사용 하여 직관 적 입 니 다.코드 프 리 젠 테 이 션 안 할 게 요.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기