抽象类和抽象方法

抽象方法:使用abstract修饰的方法,没有方法体,没有声明,定义的是一种规范,就是告诉子类必须要给抽象方法提供具体的实现

抽象类:包含抽象方法的类就是抽象类,通过抽象类,我们就可以做到严格限制子类的设计,使子类之间更加通用。

csharp 复制代码
package testduotai;

public abstract class Animal {
    public abstract void shout(); // 抽象方法
    public abstract void run(); // 抽象方法
}

class Dog extends Animal {
    // 子类必须实现父类的抽象方法,否则编译报错
    @Override
    public void shout() {
        System.out.println("汪汪汪");
    }

    @Override
    public void run() {
        System.out.println("跑起来");
    }
}

抽象类的使用要点

  1. 有抽象方法的类整你定义为抽象类
  2. 抽象类不可以实例化,即不可以用new方法来实例化抽象类;
ini 复制代码
Animal a = new Animal(); // 如果Animal是抽象类,则这样写会编译报错
  1. 抽象类可以包含属性、方法、构造方法。但是构造方法不能用来new实例,只能用来被子类调用。
  2. 抽象类只能用来被继承,不可以用来new
  3. 抽象方法必须被子类实现
相关推荐
东风破_7 小时前
从跨域到 WebSocket:前端跨域方案、SSE 与双向实时通信详解
前端·后端
行百里er9 小时前
Gateway 上别硬塞 MVC:DeferredImportSelector 看菜下锅
spring boot·后端·开源
名字还没想好☜9 小时前
Java 遍历时删元素抛 ConcurrentModificationException:fail-fast 原理与三种正确删法
后端
IT_陈寒10 小时前
React Hooks闭包陷阱差点让我加班到凌晨
前端·人工智能·后端
码事漫谈10 小时前
本体论,彻底懂
后端
创新技术阁10 小时前
FastapiAdmin 系统日志体系与核心配置参数详解
前端·后端·fastapi
掘金者阿豪10 小时前
SQL Server 迁到金仓,真正麻烦的不是数据,而是这些 T-SQL
后端
Kyrie_kk11 小时前
Java--IO--Path文件访问
java·后端
wxwx_bscxy32211 小时前
基于springboot宠物领养系统的设计与实现
数据库·spring boot·后端·spring·宠物
分支预测失败11 小时前
RISC-V AIA 中断架构实战:从 PLIC 到 APLIC 与 IMSIC 的迁移
linux·后端