天天看点

【GO】面向对象:多态

多态是指,一个父类接口可以拥有多种子类实现形态

这些子类形态之间有相同点,那就是它们都实现了父类接口中的方法

不同点则是大家对父类接口方法的实现方式各不相同,演绎何为千姿百态

https://github.com/fangkang7/goLearn

案例

【GO】面向对象:多态
【GO】面向对象:多态
【GO】面向对象:多态
【GO】面向对象:多态

在这个案例中,我们定义了一个Worker的接口,并且定义了俩个抽象方法

然后定义了三个子类来实现Worker接口

实现接口 就是把接口的方法都实现即可

然后在main函数里边创建一个Worker的切片 这里需要注意的是在使用make创建切片时需要一个默认size

在扩容切片时需要传入指针。因为在方法主语是使用的指针 并非值

然后使用for循环来遍历Worker切片,并且调用各子类的方法

在创建切片时的名字需要跟接口名一致

扩容切片时需要添加指针 而非值

创建随机数需要种子选手