面向對象: 多態(動態綁定)

寫程序的道理就和做其他任何事是一樣的, 比如炒個菜, 或者用洛陽鏟來考古探方. 下面用其中任何一種事情來進行多態性的實現方法吧:
        炒菜(實現多態):
        1. 原料: 父類一個, 子類一個或多個
                     父類裏面準備虛函數一個或多個.
                     子類裏面準備相應的虛函數的實現一個或多個.
                    
                     父類的指針一個.
                     子類對象一個或多個.
                      
        2. 烹調過程:
                      a. 先創建一個父類: class Person, 裏面聲明虛函數: virtual void study();
                            創建一個子類: class Student, 裏面聲明函數:  void study(); 
                            創建一個子類: class Teacher, 聲明函數: void study();
                            實現函數:
                                            Student::void study() { cout << " 學生們聽老師講課來學習c++ " << endl; };
                                            Teacher::void study(){ cout << " 老師們翻閱學習資料學習c++  " << endl; };
                      
                       b. main()函數中:
                             首先, 創建一個父類的指針:
                                    Person *person;
                              其次, 創建子類的對象:
                                    Student stu = new Student;
                                    Teacher teac = new Teacher;
                              實現多態: 用父類指針指向各個子類, 然後通過這一個指針, 執行相同名字的不同實現:
                                    person = &stu;
                                    person->study();            //     學生們聽老師講課來學習c++ 


                                    person = &teac;
                                    person->study();            //    老師們翻閱學習資料學習c++
                                    
                             
        我現在是前敵總指揮員, 現命令各縱隊司令發起最後總攻, 我雖然只發布了同一個命令, 就是進攻, 但是各個縱隊和軍團進行攻擊的方式將各不相同, 這就是面向對象編程思想中的多態.           

 

 

 

                          

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章