面向對象(基礎oop)之初識繼承

      你們好,我叫李京陽,,很高興認識你們,之因此我想開一個本身的博客,就是來把本身所瞭解的知識點經過本身的話寫一下,但願被博客園的朋友們點評和一塊兒討論一下,也但願從博客園中多認識一些軟件開發人員!如今我開始講一下面向對象的一點知識,請大家多多點評和討論!!this


          1. 繼承的目的: 子類但願獲得父類中的成員,而不本身去親自定義.
          給你們看張解析繼承的圖理解一下,嘻嘻:
spa

          
          2. 繼承的語法:
             a. 在子類的類名後面寫1個冒號再跟上父親類的名字.
                class Student:Person
                {
                 
                }
             b. Student類從Person類繼承,Student類是Person類的子類.Person類是Student類的父類.
                Student類從Person類派生,Studnet類是Person類的派生類,Person類是Student類的基類.
          
3d

 

 1     class Student:Person
 2     { 
 3 
 4         public string StuNo { get; set; }
 5 
 6  
 7         public void Test()
 8         {   
 9             this.Height = 178;
10         }


          3. 子類從父類繼承,那麼子類就擁有父類的所有成員.
         
          4. 繼承是類的繼承, 而不是對象的繼承.
             子類從父類繼承,就至關於在 子類的模板中 擁有類父類的全部的成員.
             在建立子類對象的時候,仍然是根據子類模板來建立的,只不過這個子類模板中擁有了父類的成員.
             因此我建立1個子類對象 這個子類對象中擁有子類的成員和父類的全部成員.
         
code

 

 1  class Person
 2     { 
 3 
 4         public string Name { get; set; }
 5         private int Age { get; set; }
 6         internal bool Gender { get; set; } 
 7         protected double Height { get; set; } 
 8 
 9 
10         public void SayHi()
11         {
12             this.Height = 178;
13             Console.WriteLine("年齡:" + Age);
14         }
15     }
 1     class Student:Person
 2     { 
 3 
 4         public string StuNo { get; set; }
 5 
 6  
 7         public void Test()
 8         {   
 9             this.Height = 178;
10         }


          5. 子類從父類繼承,子類就能夠擁有父類的所有成員嗎?
             a. 在子類中,能夠訪問父類的public和internal 不能訪問private
            
             b. 子類從父類繼承,那麼子類模板中就擁有了父類模板中的全部成員,包括私有成員.
                在建立子類對象的時候, 由於子類對象是根據子類模板建立愛的,因此子類對象中天然也就有父類的私有成員.
                只不過父類的私有成員 在子類的內部沒法訪問,可是它卻真實的存在.
         
             c. 類的成員的訪問修飾符
                public: 能夠在任意的地方訪問.
                private: 只能在類的內部訪問
                internal: 能夠在當前程序集中訪問   
                protected: 能夠在本類和本類的子類中訪問.
               
對象

1         public string Name { get; set; }
2         private int Age { get; set; }
3         internal bool Gender { get; set; } 
4         protected double Height { get; set; } 


             d. 子類從父類繼承,子類模板中就擁有了父類模板中的全部成員,包括私有的.
                只不過在子類的內部只能訪問父類的 非私有成員.
                                 
          6.   靜態成員也是能夠繼承的,只不過不管經過父類去訪問仍是經過子類去訪問 訪問到的都是同1個靜態成員.
               子類和父類共享1個靜態成員.靜態成員仍然只存在1份.

          7.  繼承的好處:
              a. 減小代碼的冗餘.
              b. 修改維護極爲方便.
              c. 爲了多態.
blog

相關文章
相關標籤/搜索