提取鸭子的"叫喊"、“飞行”行为

将“叫喊”、“飞行”行为抽取为接口，其继承类实现了不同的状况，例如会飞，不会飞，大声叫，吱吱叫或者是不叫；接下来在鸭子超类之中让接口变量引用不同的行为实例，使得不同的子类实质上拥有不同的行为；同时保持程序结构良好的可维护性。