11.1 Swift继承的概念和语法

来源:互联网 发布:金蝶k3软件 编辑:程序博客网 时间:2024/05/17 23:18

        /**

         1)继承语法

         继承是面向对象最显著的一个特性。继承是从已有的类中派生出新的类。

         新的类吸收已有类的数据属性和行为,并且扩展新的能力。

         

         术语:基类(父类,超类),派生类(子类,继承类)

         

         Swift继承的语法:

         class ChildClass: FatherClass {

         

         }

         

         继承的优点:代码重用。

         继承的缺点:增加程序的耦合度,父类的改变会影响子类。

         Swift没有多继承,只有单继承。

         */

        

        class Human {

            var name:String = ""

            var id:Int = 0

            func eat() ->Void {

                print("eat")

            }

            

            func drink() ->Void {

                print("drink")

            }

            

            func sleep() ->Void {

                print("sleep")

            }

        }

        

        

        // 子类  : 基类

        class Woman:Human {

            func birth() ->Void {

                print("birth")

            }

        }

        

        let w =Woman.init()

        

        let h =Human.init()

        

        

        w.eat()

        w.sleep()

        w.birth()

        

        h.eat()

        h.sleep()

        

        // 不可以调用

//        h.birth()

        

        /**

         总结:派生类,派生于基类。它继承类基类的属性和方法,当然在swift语言中是这样的,我们可以

         认为它实现了复用,我们在派生类里面并没有定义的属性和方法,但是我们可以直接拿来用。

         继承也有缺点的,比如说父类发生了改变,那么肯定会影响到它的子类,

         比如从编译的角度讲,可能需要我们重新编译程序,从子类讲可能会让子类的行为发生了改变你还不知道呢。

         就是父类和子类之间的耦合度太密切了啊。

         */


0 0