1.定义格式

class zi extends fu 
  { 
  }

2.继承的优势


1)继承提高了代码的复用性,提高了开发效率


2)继承的出现让类之间产生了联系,为多态提供了前提条件



3.继承的缺点


1)类与类之间的耦合度过高



4.继承的注意事项


类的继承只支持单继承,不允许多继承,一个子类只能有一个直接父类,但是一个父类可以有多个子类



6.子类和父类之间的联系


1)子类可以直接访问父类的一切非私有的变量和方法


2)父类的私有属性和方法,子类访问不了


3)当子类和父类具有同名的变量和方法,但是子类想访问父类的该方法或者变量的时候,必须使用super关键字


4)当程序执行子类的某个方法的时候,首先查询子类中存不存在,如果存在,就执行子类的方法,如果不存在,那么就去父类中查找方法执行


5)当子类出现和父类一模一样的方法的时候(名称,参数,返回值),即为重写了父类的方法。这样既沿袭了父类的方法,也为子类提供了独有的特性


6)子类重写父类方法,必须保证子类的修饰权限要大于或者等于父类的权限


7)总结:当一个类是另外一个类的一种的时候,可以通过继承,来继承属性和功能,如果父类具备的功能需要子类特殊定义的时候,那么进行方法的重写。



6.抽象类


1)定义:分析事物时,如果发现共性,就会出现向上抽取。此时方法功能声明相同,只抽取方法声明,不抽取方法主体,这样的类成为抽象类


2)定义了抽象函数的类必须被abstract修饰,被abstract修饰的类是抽象类


3)抽象方法格式: public abstract void funcName(args1) { };


4)抽象类格式:public abstract class className{ }


5)抽象类注意事项:


①抽象类和抽象方法都必须被abstract修饰。抽象方法一定在抽象类中定义


②抽象类不能直接创建对象,因为没有方法的主体


③子类只有覆盖了抽象父类的所有方法之后,才可以实例化对象,不然仍然是抽象类(只要有抽象方法,那么就是抽象类)


④抽象类只能被继承,将共性变得简单


⑤抽象类可以有非抽象方法


⑥与abstract冲突的关键字:private final static