博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
面向对象之继承(1)
阅读量:5735 次
发布时间:2019-06-18

本文共 986 字,大约阅读时间需要 3 分钟。

1、继承的作用:

  通过继承 将多个类中的相同的内容摘取出来 变成一个新的类 让其他类和当前新的类产生关系 达到代码复用性的目的,可以更好的维护类和类之间的关系

2、如何继承

  Class A extend B

    A是B的子类(派生类)

    B是A的父类(超类/基类)

3、继承的注意事项:

  继承在java中只支持单继承,一个子类只能有一个父类,但是一个父类可以有多个子类

  子类继承父类,重写父类的方法,子类可以获得父类的部分功能。

    子类不能从父类继承的:private修饰的方法、final修饰的方法、父类构造器

    父类static修饰的方法子类可以继承但不能重写

 

4、子类创建对象时会导致父类加载,先调用父类的构造器

 

5、子类继承父类时不能继承父类的构造器,但是可以调用父类的构造器

  如果没有默认的空构造,要调用父类的有参构造,就必须用关键字super显式地编写调用父类构造器的语句,并配备参数列表

  

  因为会先调用父类的构造器,所以运行的结果是:

  证明-4;

 

6、子类重写父类方法,默认情况下会调用子类重写的方法。子类对象调用父类原来的方法,可以通过super.调用

    

  

7、因为java只支持单继承,所以当A继承B不能满足需求时,较好的方法是B继承C,多层继承。

   

  以上是一个多层继承简单的例子,学生继承人的特征,并有自己新的特征,坏学生继承学生,有相同的day方法,但有不同的表现。

  多层继承较好地解决了前面继承无法满足的要求,但是继承链过长容易导致代码不易维护,后期功能拓展很麻烦。

 

8.当一个类没有显式地继承一个类时,默认会隐式地继承Object类

   

  以上代码可以Person类的父类其实就是Object,在Person类中可以使用Object的资源和方法,如toString方法

 

9、继承的重写

  子类重写父类要遵守以下规则:

    (1)方法名/形参列表相同

    (2)子类的返回值类型/抛出异常  小于等于 父类

    (3)子类的修饰符权限 大于等于 父类

  检验重写:@Override注解

    如果加上该注解没有出错就是重写了父类的方法,否则就没有重写

 

转载于:https://www.cnblogs.com/dhome/p/9490484.html

你可能感兴趣的文章
排序-选择排序
查看>>
sort()函数与qsort()函数及其头文件
查看>>
Callable和Future
查看>>
JPA常用注解
查看>>
我的友情链接
查看>>
Ubuntu下sublime-text3安装步骤
查看>>
autorelease 和垃圾回收制(gc)的区别
查看>>
大型网站技术架构(八)网站的安全架构
查看>>
C++中的基础
查看>>
Windows上用VS Code调试Rust程序
查看>>
AJAX
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
php redis cluster
查看>>
要能够使用putty访问ubuntu,要做如下几步:
查看>>
WebKit阅读起步
查看>>
Android API Levels
查看>>
开源协议比较
查看>>
我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第一篇)
查看>>
Quartz
查看>>