java

继承

概念:继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系。

格式:public class 子类类名 extends 父类类名

好处:

1、继承的出现提高了代码的复用性,提高软件开发效率。

2、继承的出现让类与类之间产生了关系,提供了多态的前提。

 注意事项:

1、在Java中,类只支持单继承,不允许多继承,也就是说一个类只能有一个直接父类

2、多个子类可以继承一个父类

3、在Java中,多层继承是可以的,即一个类的父类可以再去继承另外的父类

4、在Java中,子类和父类是一种相对概念,也就是说一个类是某个类父类的同时,也可以是另一个类的子类

5.子类和父类中有相同的变量名想要访问父类的该变量使用super关键字

方法

1.子类从父类继承来的方法可以直接调用,不用在子类中再重复写一遍

2.子类独有父类中没有的方法直接调用

3.子类和父类中有相同方法,但子类需要在原基础上增加内容,子类方法会覆盖掉父类中的方法,也叫方法重写(子类方法的权限要大于或等于父类方法的权限,两个方法的返回值类型、方法名、参数列表都要完全相同)

抽象类

父类只是知道子类应该包含怎么样的方法,但是无法准确知道子类如何实现这些方法,即可以创建方法却不能确定准确的方法执行语句,所以只创建方法不加执行语句叫做抽象方法,含有抽象方法的类叫做抽象类

格式

抽象类:public abstract class 类名

抽象方法:public abstract 返回值类型 方法名(参数);

特点:

1、抽象类和抽象方法都需要被abstract修饰。抽象方法一定要定义在抽象类中。

2、抽象类不可以直接创建对象,原因:调用抽象方法没有意义。

3、只有覆盖了抽象类中所有的抽象方法后,其子类才可以创建对象。否则该子类还是一个抽象类。

之所以继承抽象类,更多的是在思想,是面对共性类型操作会更简单。

细节问题:

1、抽象类一定是个父类?

是的,因为不断抽取而来的。

2、抽象类中是否可以不定义抽象方法。

是可以的,那这个抽象类的存在到底有什么意义呢?不让该类创建对象,方法可以直接让子类去使用

3、抽象关键字abstract不可以和哪些关键字共存?

l1、private:私有的方法子类是无法继承到的,也不存在覆盖,而abstract和private一起使用修饰方法,abstract既要子类去实现这个方法,而private修饰子类根本无法得到父类这个方法。互相矛盾。

2、final,暂时不关注

3、static,暂时不关注

 

posted @ 2020-09-25 16:50  ldldl  阅读(70)  评论(0)    收藏  举报