1.工厂方法
在下面我们通过这个方法来将生成的对象赋给变量。但是这种生成对象的方式有一个很严重的问题就是每次创建新对象时都会重复创建show函数,这意味着每个对象事实上都拥有一个不同的show方法,要解决这个问题我们需要在createDuck方法前再创建一个show方法,而后在createDuck方法内部通过赋予对象指针的方式来解决。
2.构造函数方式
这样就有第二种构造函数方式来创建类,构造函数方式和工厂方法方式类似,在定义时选择好类名来创建如:
3.原型方式
我们先看看原型方式是怎么样的
4.混合构造函数和原型方式
在这种方式里我们通过构造函数方式来确定类的属性,通过原型方式来定义类的方法。