

             ┌──────────────┐
             │    Animal    │
             ├──────────────┤
             │ +String name │
             ├──────────────┤
             │ +eat() void  │
             └──────────────┘
                   △   △
          ┌────────┘   └────────┐
          │                     │
          │                     │
  ┌───────────────┐    ┌────────────────┐
  │      Dog      │    │      Cat       │
  ├───────────────┤    ├────────────────┤
  │ +String breed │    │ +bool isIndoor │
  ├───────────────┤    ├────────────────┤
  │ +bark() void  │    │ +meow() void   │
  └───────────────┘    └────────────────┘
