重写各个子类之中的方法

编写测试类，用来查看动态获取实例是否正常。
进一步进行测试

fly行为和quack行为在实例化时引用不同的实现类来形成组合，不同的组合适用不同的模型：
1. 动物鸭，能飞能叫；
2. 橡皮鸭，不能飞能吱；
3. 诱饵鸭，不能飞不能叫；

另，模型鸭，借助超类的set方法使得飞行能力可变；