package com.tu.oop.demo8;
//abstract 抽象类:类 extends:单继承~ (接口可以多继承)
public abstract class Action {
//约束~有人帮我们实现~
//abstract,抽象方法,只有方法名字,没有方法的实现!
public abstract void doSomething();
//1、抽象类不能new这个抽象类,只能靠子类去实现它:它只是一个约束!
//2、抽象类中可以写普通的方法(是抽象的类不一定要有抽象方法)
//3、抽象方法必须在抽象类中(有抽象方法的类一定是抽象类)
//抽象的抽象:约束~
/**
* 抽象类可以有构造方法,只是不能直接创建抽象类的实例对象而已。
* 在继承了抽象类的子类中通过super()或super(参数列表)调用抽象类中的构造方法。
*/
//思考题?抽象类存在构造器吗?
/*
存在构造器:即使你没有提供任何构造函数,编译器将为抽象类添加默认的无参数的构造函数,
没有的话你的子类将无法编译,因为在任何构造函数中的第一条语句隐式调用super()
*/
//抽象类存在的意义? 抽象出一个对象的公用属性,继承抽象类重写它的方法,减少代码的开发,提高开发效率
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律