zoukankan      html  css  js  c++  java
  • 抽象类与抽象方法

    抽象类是一种典型的超类,一般包含有抽象方法(可以不包含抽象方法),而这些抽象方法需由子类来实现,即:子类覆盖超类中的抽象方法,并提供实现代码。

    简单例子:

     

    声明抽象类:

    1. 类中有抽象方法,则这个类必须声明为抽象方法;
    2. 抽象类中可以没有抽象方法;       

     

     

     

    抽象类的特点:

    不能通过new来创建抽象类的对象

    抽象类不能被 final 修饰(被final修饰后,这个类就不能被继承了,违背了抽象类的设计初衷)

     

     

    抽象方法声明:

    抽象方法不能用final修饰抽象方法,否则不能被子类覆盖。

     

    抽象方法不能被private修饰,否则子类无法访问。

     

    抽象方法不能被static修饰,否则就可以通过抽象类名来调用这个抽象方法,而此时的抽象方法无任何实现,会出错,所以JAVA规定抽象方法不能被static修饰,抽象方法只能是实例方法。

    在子类中实现抽象方法

    在子类中实现抽象方法后,就可以通过子类来创建对象了。

    注意:子类实现了父类的所有抽象方法,则子类可以声明为普通类,也可以声明为抽象类

             子类没有实现父类的所有抽象方法,则子类必须声明为抽象方法。

     

  • 相关阅读:
    你看那个人他像一条狗
    jvm系列(八):jvm知识点总览
    jvm系列(七):jvm调优-工具篇
    百亿互金平台救火故事
    一个脚本引发的血案
    一次dns缓存引发的惨案
    一次生产事故的优化经历
    从零到百亿互联网金融架构发展史
    2016颠倒梦想,2017静心前行
    Spring Boot(九):定时任务
  • 原文地址:https://www.cnblogs.com/maxiaoshuai/p/5400774.html
Copyright © 2011-2022 走看看