���Ľ�������л�����Ķ�
- 被继承的类称为**超类(父类)。从超类派生出来(继承超类)的新类称子类。**
- 只支持单重继承,不支持多重继承,所以一个类只能有一个超类。
- 继承的层次结构。一个子类成为另一个子类的超类。
- 如果类**Sub是类Super的子类,则类Sub继承了超类Super**的变量和方法。
- 子类**Sub中,包括两部分的内容:从超类Super**中继承下来的变量和方法,自己新增加的变量和方法。
子类继承超类的成员变量和方法
继承原则
子类只继承超类中非**private**的成员变量和方法。 用访问器方法访问类的私有成员:例:
double getWidth(){return width;}
double getHeight(){return height;}
void setWidth(double w){ width=w;}
void setHeight(double h){ height=h;}
什么时候应该把实例变量声明为private?
一般坚持两个基本原则:如果一个实例变量只被它所在类中的方法使用,那么应该将其声明为private。如果一个实例变量必须应用在某一个范围内,那么就应该将其声明为private,而且只能通过访问器方法来访问它。这样可以防止把无效的值附给它。
变量的**隐藏原则**
子类的成员变量和超类的成员变量同名时,超类的成员变量被隐藏(不能继承)。
方法的**覆盖原则**
子类的成员方法和超类的成员方法同名时,超类的成员方法被子类的成员方法覆盖(不能继承)。