派生类继承问题和访问权限问题

来源:互联网 发布:qq号码采集软件 编辑:程序博客网 时间:2024/06/05 20:58

当一个子类从父类继承时,父类的所有成员成为子类的成员,此时对父类成员的访问状态由继承时使用的继承限定符决定。 

 1.如果子类从父类继承时使用的继承限定符是public,那么 

(1)父类的public成员成为子类的public成员,允许类以外的代码访问这些成员;

 (2)父类的private成员仍旧是父类的private成员,子类成员不可以访问这些成员;

 (3)父类的protected成员成为子类的protected成员,只允许子类成员访问;  

2.如果子类从父类继承时使用的继承限定符是protected,那么

 (1)父类的public成员成为子类的protected成员,只允许子类成员访问;

 (2)父类的private成员仍旧是父类的private成员,子类成员不可以访问这些成员;

 (3)父类的protected成员成为子类的protected成员,只允许子类成员访问  

3.如果子类从父类继承时使用的继承限定符是private,那么 

(1)父类的public成员成为子类的private成员,只允许子类成员访问; 

(2)父类的private成员仍旧是父类的private成员,子类成员不可以访问这些成员;

 (3)父类的protected成员成为子类的private成员,只允许子类成员访问;

//公有继承                      对象访问    成员访问
public    -->  public              Y         Y
protected -->  protected           N         Y
private   -->  private             N         N

//保护继承                      对象访问    成员访问
public    -->  protected           N         Y
protected -->  protected           N         Y
private   -->  protected           N         N

//私有继承                      对象访问    成员访问
public    -->  private             N         Y
protected -->  private             N         Y
private   -->  private             N         N

0 0
原创粉丝点击