1、继承:让类与类之间产生关系(子父类关系),子类可以之间使用父类中的非私有成员

2格式:public class Zi extends Fu { }

  Fu:父类,也叫超类、基类

  Zi:子类,也被称为派生类

3、继承的优缺点:

  优点:1、提高代码复用性;2、提高代码维护性;3、让类与类之间产生了关系,是多态的前提

  缺点:继承是侵入性的,降低了代码的灵活性,因为继承关系导致子类必须拥有父类非私有属性和方法,让子类多了约束,增强了代码的耦合性。

继承的使用场景:

  当类与类之间,存在共性(相同的内容),并产生了 is a 的关系时,就可以考虑使用继承来优化代码。

  示例:学生和老师都是人,可以将学生和老师的共性提取到人这个类当中并继承;程序员和业务员都是员工,可以将程序员和业务员的共性提取到员工这个类当中并继承。

    学生:姓名,年龄,性别,生日          程序员:姓名,年龄,职位,工资

    老师:姓名,年龄,性别,生日     业务员:姓名,年龄,职位,工资

    —— —— —— —— —— ——       —— —— —— —— —— ——

    人   :姓名,年龄,性别,生日      员工    :姓名,年龄,职位,工资

4、继承的特点:

  a、Java只支持单继承,不支持多继承,但支持多层继承。a继承了b,b可以继承c;

  b、继承的成员变量访问特点:子类局部范围找-->子类成员范围找-->父类成员范围找,如果子父类出现同名成员变量,会就近原则优先使用子类的,一定要使用父类的话,可以用super关键字区分。

  c、继承的成员方法访问特点:子类成员范围找-->父类成员范围找,如果子父类出现同名成员方法,会就近原则优先使用子类的,一定要使用父类的话,可以用super关键字区分。