2010-12-15 4 views
2

이 유명한 Parking Lot 예에서 OOPS의 힘을 이해하는 데 도움이됩니다. 어제이 저널을 읽으면서 완벽한 저수준 디자인을 찾아 냈습니다.Java OOPS 주차장 예 디자인

ParkingLot - 종료() - - 입구() - 업데이트() - ParkingLot가 ParkingSpaces (ParkingSpaces 목록) 가 INT 용량

ParkingSpace -long ID -String 유형 (2 륜 4 휠러 등) - 차량 (갖는다 Vechicle 참조)

차량 (차량 (두 휠러 4 휠러 어떤 종류의 인터페이스 -) - 파크() - 언 파킹(),추상 방법 - ParkingLot 및 ParkingSpace에 대한 참조가 있습니다.

자동차, 트럭의 다른 종류의 차량이 차량을 구현합니다.

내가 여기에없는 것이 있습니까 ... 여기에 따라야 할 디자인 패턴이 있습니까? 이 예제에서 우리는 어떻게 다형성을 달성하고 있습니까?

+0

구체적으로 알아 내려고하는 것은 무엇입니까 ... 주차장과 관련하여 주차장을 설계하려고합니까? 이 숙제가 있니? –

+0

클래스, 인터페이스, 메소드, 변수 및 OOPS 개념을 사용하여이 애플리케이션을 설계하는 방법에 대해 설명합니다. – SPD

+0

그들이 당신을 도울 때 대답을 받아들이는 것이 좋다. –

답변

2

차량용 인터페이스는 차량의 각 개별 유형에 대해 해당 메소드/기능을 작성하지 않고도 여러 차량에 대해 유사한 동작을 정의 할 수 있기 때문에 객체 지향 프로그래밍이 도움이됩니다.

클래스 (ParkingLot, ParkingSpace, Car, Truck)와 인터페이스 (Vehicle)에 대해 꽤 잘하는 것 같습니다. 주차 공간의 종류에 따라 필드가 다른 경우에는 MotorSpace, CompactSpace 등에서 구현 한 ParkingSpace 인터페이스를 고려해 볼 수 있습니다. 그러나 현재 어떻게 사용하고 있습니까? 다형성은 인터페이스와도 잘 어울립니다.

편집 : 구성과 관련하여 ParkingSpaces가있는 ParkingLot을 보유하고 있습니다. Vehicle 클래스에 Wheels 또는 Options 또는 다른 하위 클래스가 있으면 추가 구성이됩니다.

+0

감사합니다. Alex. 여기에 작곡과 집계가 어떻게 작용하는지 한 가지 질문이 있습니다. – SPD