1. 程式人生 > >Java中類成員函式過載、覆蓋和隱藏的區別

Java中類成員函式過載、覆蓋和隱藏的區別

其他擴充套件連結:


過載:

成員函式被過載的特徵:

1相同的範圍:在同一個類中

2函式名相同,引數不同

3virtual可有可無

覆蓋:

派生函式覆蓋基類函式

1位於不同的範圍內(子類和父類之間)

2函式簽名相同(函式名和引數均相同)

3基類函式必須有virtual關鍵字

隱藏:

派生類的函式遮蔽了與其同名的函式:

1)派生類的函式名和基類的函式名相同,但是引數不同。不論有無virtual關鍵字,基類函式均被隱藏(注意與過載區別開)

2)派生類的函式名和基類的函式名相同,引數也相同,但是基類沒有virtual關鍵字,則基類的函式將被隱藏(注意與覆蓋區分開)