자바 디자인 모델 의 --- (Adapter) 어댑터 모델 구현
디자인 모드 를 시 작 했 어 요. 정말 시원 하 네요.한 걸음 한 걸음 감정 을 받 을 수 있 기 를 바 랍 니 다.
오늘 먼저 배 운 첫 번 째 디자인 모델 (어댑터) 모델.수 요 는 이렇다.로켓 시 뮬 레이 션 프로그램 을 설계 해서 당신 이 모두 얻 은 로켓 을 이용 할 수 있 습 니 다.
정 보 는 기 존의 유형 이 고객 이 제기 한 기능 을 실현 할 수 있다 는 것 을 발견 했다. 그러나 이런 유형 은 고객 이 제기 한 핑계 와 상대 적 으로 독립 된 것 이 고 방법 명 만 다 를 뿐이다.
이미, 이것 은, 당신 은 Adapter 모드 를 사용 할 수 있 습 니 다.
먼저 가설 고객 이 제기 한 인 터 페 이 스 를 붙인다
package com.bird.inter;
/**
*
* @author Bird
*
*/
public interface RocketSim {
public double getMass();
public double getThrust();
public void setTim(double t);
}
개발 자가 가지 고 있 는 프로그램 은 고객 이 필요 로 하 는 일부 기능 을 완 성 했 지만 고객 의 인터페이스 에 비해 독립 적 이 고 방법 이름 만 다 르 지만 안에
복잡 한 업무 논리 가 있어 재 활용 이 필요 하지만 고객 이 제출 한 인터페이스 에 대한 요 구 를 만족 시 켜 야 한다.다음은 이 종 류 를 붙 여 주세요.
package com.bird.exit;
/**
*
* @author Bird
*
*/
public class PhysicalRocket{
@SuppressWarnings("unused")
private double burnArea;
private double burnRate;
@SuppressWarnings("unused")
private double fuelMass;
private double totalMass;
public PhysicalRocket(double burnArea, double burnRate, double fuelMass,
double totalMass) {
this.burnArea = burnArea;
this.burnRate = burnRate;
this.fuelMass = fuelMass;
this.totalMass = totalMass;
}
public double getBurnTime(){
//
System.out.println(" PhysicalRocket getBurnTime ");
return 0;
}
public double getMass(){
//
System.out.println(" PhysicalRocket getMass ");
return totalMass;
}
public double getThrust(){
//
System.out.println(" PhysicalRocket getThrust ");
return burnRate;
}
}
그 다음 에 코드 와 재 활용 과 사용자 의 수 요 를 실현 하기 위해 저 희 는 Adapter 디자인 모델 을 사용 하여 원래 의 종 류 를 계승 한 다음 에 인 터 페 이 스 를 실현 하고 부모 류 를 직접 호출 하 는 방법 이 끝나 도 코드 의 재 활용 을 성공 적 으로 실현 합 니 다. 이것 이 바로 Adapter 디자인 모델 입 니 다.
package com.bird.newClass;
import com.bird.exit.PhysicalRocket;
import com.bird.inter.RocketSim;
/**
* ,
* @author Administrator
*
*/
public class OozinozRocket extends PhysicalRocket implements RocketSim {
@SuppressWarnings("unused")
private double time;
public OozinozRocket(double burnArea, double burnRate, double fuelMass,
double totalMass) {
super(burnArea, burnRate, fuelMass, totalMass);
}
@Override
public double getMass() {
//
return super.getMass();
}
@Override
public double getThrust() {
//
return super.getThrust();
}
@Override
public void setTim(double t) {
this.time = t;
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.