Using an object because it has the methods you call, not because of its declared class: if it has speak(), you can call speak().
Duck typing
Using an object because it has the methods you call, not because of its declared class: if it has speak(), you can call speak().