在面向对象的编程方法中有一个重要的特点就是封装性,而体现封装性的设计就是一种对类成员的访问控制机制,即public,private,protected三种访问类别,对于每一种类别的详细说明请看下文。
三种访问控制 访问控制
在面向对象的程序设计中,如Java,C++,为了更好的管理属于同一种对象(也就是类)的成员,设计了“访问控制”机制,初学者对于这种访问控制机制并不会有深刻的理解,尤其是有面向过程语言基础(如C语言)的开发者。
但不得不说的是实践证明,这种访问控制机制对全世界的软件开发都起到了相当大的推动作用,尽管彻底理解其好处的确需要花上一段时间(暂时会用即可,不必彻底理解)。
PPP public——类的公有成员
public成员访问准则:
在类外部所有用户可使用“类名::公有成员”直接访问派生类(子类)继承父类所有的公有成员private——类的私有成员
private成员访问准则:
只属于当前类,其他类包括派生类都不可以直接使用private成员只能通过公有成员函数来调用派生类能够通过基类的公有方法间接访问基类的private成员private成员无法被派生类继承(老子的私房钱儿子也不能用)protected——类的保护成员
protected成员访问准则:
类外只能用公有成员来访问protected区的类成员派生类成员可以直接访问基类(父类)的protected成员最好对类数据成员采用private访问控制而不使用protected访问控制
访问权限 总结
C++中关于public、private、protected的使用比较简单,在Java中就比较复杂了,个人推荐学习的话通过C++来搞懂这些访问机制是比较容易的,然后再去学Java。
C