new子类会先运行父类的构造函数
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                new子类会先运行父类的构造函数
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.                        
                                發(fā)現(xiàn)子類構(gòu)造函數(shù)運(yùn)行時(shí),先運(yùn)行了父類的構(gòu)造函數(shù)。為什么呢?
原因:子類的所有構(gòu)造函數(shù)中的第一行,其實(shí)都有一條隱身的語句super();
super():?表示父類的構(gòu)造函數(shù),并會(huì)調(diào)用于參數(shù)相對應(yīng)的父類中的構(gòu)造函數(shù)。而super():是在調(diào)用父類中空參數(shù)的構(gòu)造函數(shù)。
為什么子類對象初始化時(shí),都需要調(diào)用父類中的函數(shù)?(為什么要在子類構(gòu)造函數(shù)的第一行加入這個(gè)super()?)
因?yàn)樽宇惱^承父類,會(huì)繼承到父類中的數(shù)據(jù),所以必須要看父類是如何對自己的數(shù)據(jù)進(jìn)行初始化的。所以子類在進(jìn)行對象初始化時(shí),先調(diào)用父類的構(gòu)造函數(shù),這就是子類的實(shí)例化過程。
總結(jié)
以上是生活随笔為你收集整理的new子类会先运行父类的构造函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 利用 ucinet 和 netdraw进
 - 下一篇: c#获取当前应用程序所在路径