Skip to content

Latest commit

 

History

History
27 lines (25 loc) · 651 Bytes

File metadata and controls

27 lines (25 loc) · 651 Bytes

Iterator

UsedCarDealer exposes a CarIterator so client code can traverse cars without depending on the dealer's internal collection.

classDiagram
direction LR
class UsedCarDealerAggregate {
  <<interface>>
  +createIterator() CarIterator
}
class UsedCarDealer
class CarIterator {
  <<interface>>
  +hasNext() boolean
  +next() Car
}
class UsedCarDealerIterator
class Car
class Main
UsedCarDealerAggregate <|.. UsedCarDealer
CarIterator <|.. UsedCarDealerIterator
UsedCarDealer o-- Car : inventory
UsedCarDealer --> UsedCarDealerIterator : creates
UsedCarDealerIterator --> Car : returns current
Main --> CarIterator : traverses
Loading