1. 程式人生 > >private、protected、public和internal的區別

private、protected、public和internal的區別

private是完全私有的,只有在類自己裡面可以呼叫,在類的外部和子類都不能呼叫,子類也不能繼承父類的private的屬性和方法。

protected雖然可以被外界看到,但外界卻不能呼叫,只有自己及自己的子類可以呼叫(protected的屬性和方法都可以被子類所繼承和呼叫)。

private和protected的共同點:外部都不可以訪問。

private和protected的不同點:在同一類中可視為一樣,但在繼承中就不同了,private在派生類中不可以被訪問,而protected可以。

public對任何類和成員都完全公開,無限制訪問。

internal同一應用程式集內部(在VS.NET中的一個專案中,這裡的專案是指單獨的專案,而不是整個解決方案)可以訪問。

public和internal的區別:public的成員可以跨程式集,但internal不能,同一程式集中具有相同的效果。

protected internal:只能在同一應用程式集內本類、派生類訪問。

 

private < protected < internal < public

當前類 < 子類 < 程式集 < 全部