Java--继承

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java--继承相关的知识,希望对你有一定的参考价值。

一、概念

  在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系。

    格式:class 子类 extends 父类

二、特点

  1、在Java中类只支持单继承,不允许多继承,一个类只能有一个直接的父类,例如下面的情况是不合法的

       class A{}  class B{}  class C extends A,B{}

    2、多个类可以继承一个父类 例如下面的情况是允许的

      class A{}   class B extends A{}   class C extends A{}

    3、Java中,多层继承是可以的,即一个类的父类可以再去继承另外的父类,例如C类继承自B类,而B类又可以去继承A类,这时,C类也可称作A类的子类。下面这种情况是允许的。

     class A{}   class B extends A{}    class C extends B{}

    4、Java中,子类和父类是一种相对概念,也就是说一个类是某个类父类的同时,也可以是另一个类的子类。例如上面的这种情况中,B类是A类的子类,同时又是C类的父类

三、继承中成员变量的特点

  1、子类只能获取父类非私有的成员;子父类中成员变量名字不一样直接获取父类的成员变量;子父类中成员变量名字一样获取的是子类的成员变量

    2、就近原则:谁离我近用谁,如果有局部变量就用局部变量;没有局部变量,有子类成员变量就用子类成员变量;没有局部变量和子类成员变量就用父类成员变量。

    3、super可以获取父类的成员变量和方法。

四、方法重写

  应用场景:当父类的方法不能完全满足子类使用的时候,既可以保留父类的功能(沿袭、传承),还可以有自己特有的功能

    注意事项:不可以重写父类私有的成员方法,压根就看不到父类的私有成员

         子类重写父类方法,权限必须大于等于父类方法的权限

    注解:  @Override:方法重写,说明下面方法是重写父类的方法。

五、this&super

  A:super(实参列表);语句  在子类的构造方法中使用,用来调用父类中的构造方法(具体哪一个由传递的参数决定),并且只能在构造方法第一行使用

       B:this(实参列表); 语句  在类的构造方法中使用,用来调用本类中的其它构造方法(具体哪一个由传递的参数决定),并且只能在构造方法的第一行使用

六、继承的优缺点

  A:优点

    提高了代码的复用性

    提高了代码的可维护性

  B:缺点:

    类的耦合性增强了

    开发的原则:高内聚低耦合

  内聚:就是自己完成某件事情的能力

  耦合:类与类的关系

    





以上是关于Java--继承的主要内容,如果未能解决你的问题,请参考以下文章

Java_继承

java中为啥要使用继承

继承问题java

Java继承概述 以及Java继承案例和继承的好处

java.lang里面的类都有哪些可以被继承?

Java 中 Enum 如何继承?