@startuml class Algo{ Algo() List<Card> getHandsA() boolean getLoseA() } class HandsA{ List<Card> value HandsA() void updateResultByDrawingA(...) void updateResultByDrawingB(...) void updateResultBySelectingA(...) void updateResultBySelectingB(...) List<Card> getValue() } class LoseA{ LoseA() boolean getValue() } Algo -->"1" HandsA :handsA Algo -->"1" LoseA :loseA HandsA <-"1" LoseA : handsA @enduml