zoukankan      html  css  js  c++  java
  • 抽象类

    1、什么情况下使用抽象方法、抽象类?

    当我们某父类需要表现它的子类们具有某些行为特征(方法),但是在父类中又无法给出具体的实现时,那么这样的方法就可以声明为抽象方法,Java中规定包含抽象方法的类必须是一个抽象类。

     

    2、抽象方法的语法格式

    【权限修饰符】 abstract 返回值类型  方法名(【形参列表】);

    抽象方法没有方法体

    抽象方法不能是私有的(private)、静态的(static)、终结的(final)、本地的(native)

    抽象方法的修饰符只能是public或protected,本包下也可以缺省。

     

    3、抽象类的语法格式

    【权限修饰符】 abstract class 类名 【extends 父类】{
       
    }

    抽象类可以有父类,它的父类可以是抽象的也可以是非抽象的。

     

    4、抽象类的特点

    (1)不能被实例化

    (2)包含抽象方法的类必须是抽象类,但是反过来抽象类可以没有抽象方法。

    (3)子类如果继承了抽象类,必须重写抽象父类的所有抽象方法,否则子类也得是抽象类。

    (4)抽象类有也必须有构造器,是给子类调用的(因为子类继承父类时,需要为从父类继承的属性进行初始化)。

    (5)抽象类的变量可以与子类的对象构成多态引用,通过抽象类的变量调用抽象方法时,执行的是子类“重写”的方法。

     

    5、面试题:抽象类与普通的非抽象类的区别?

    最主要的:抽象类不能实例化,可以包含抽象方法。

  • 相关阅读:
    生产环境之Nginx高可用方案
    MySQL主从同步配置
    SpringBoot整合MyBatisPlus配置动态数据源
    循环有序数组,查找值
    数组任意取三个数中乘积最大值
    多线程输出123以及有序输出1-75
    有序数组取中值
    RocketMQ原理及源码解析
    docker基础常用命令
    项目常用命令
  • 原文地址:https://www.cnblogs.com/panyizuoshan/p/11454599.html
Copyright © 2011-2022 走看看