抽象方法抽象类/接口
==========================================================================================
模板方法设计模式:
将相同的部分抽离出去.
==========================================================================================
接口:
==========================================================================================
接口的实现关系:
子类实现接口,就要完全覆盖接口中的所有方法。否则就会报错,类XX不是抽象的,没有覆盖接口XX中的抽象方法XXX。
==========================================================================================
抽象类和接口的异同点:
抽象类有构造方法,因为抽象类定义的是抽象的方法,必须要子类去继承抽象类才能使方法得以实现。
抽象类和接口都不能实例化。
abstrct class A
{
}
interface B
{
}
不能再测试类或者其他的类中去直接new A() 或者new B(),从安全的角度上来讲,这样更加安全,不能被其他人随便的创建,常用于工具类的包装。
抽象类的实现通过子类的extends实现功能。
接口的实现通过子类implements去实现。
子类必须去覆盖接口和抽象类的所有方法。
抽象类可以普通方法和抽象方法同在,接口只能有抽象方法。
抽象类的普通方法和普通类没有区别,继承到子类中去,抽象方法必须要覆盖。
抽象类有显示构造器。因为子类继承时会调用super()默认构造器,所以抽象类一定有构造器.
==========================================================================================
面向接口变成的好处。
面向接口变成运用了接口是一种特殊的继承,一种特殊的类的特点。
只要是实现了接口的类都可以和接口产生多态的关系。
接口 c = new 类XX()
例如:
==========================================================================================
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!