抽象类
抽象类
当父类的某些方法,需要声明,但是又不确定如何实现时(即父类方法的不确定性),可以将其声明为抽方法,那么这个类就是抽象类。
一、抽象类快速入门
当父类的一些方法不能确定时,可以用 abstract 关键字来修饰该方法,这个方法就是抽象方法,用abstract来修饰该类就是抽象类。
abstract class animal{ String name; int age; abstract public void cry(); }
-
抽象类的介绍:
-
用abstract 关键字来修饰一个类时,这个类就叫做抽象类;
访问修饰符 abstract 类名{
}
-
用abstract 关键字来修饰一个方法时,这个方法就是抽象方法;
访问修饰符 abstract 返回类型 方法名(参数列表); //没有方法体
-
抽象类的价值更多作用是在于设计,是设计者设计好后,让子类继承并实现;
抽象类()
-
抽象类,是考官比较爱问的知识点,在框架和设计模式使用较多;
-
二、抽象类使用的注意事项和细节讨论
-
抽象类不能被实例化,[解释抽象类为什么不能实例化对象](凉白茶 - 博客园 (cnblogs.com))。
-
抽象类不一定要包含abstract方法,也就是说抽象类可以没有abstract方法,但也可以有实现的非abstract方法。
-
一旦类包含了abstract方法,则这个类必须声明为abstract。
-
abstract 只能修饰类和方法,不能修饰属性和其他的。
-
抽象类可以有任意成员【抽象类本质还是类】,比如非抽象方法、构造器、静态属性等等
-
抽象方法不能有主体,即不能实现,如图所示
-
如果一个类继承了抽象类,则它必须实现抽象类的所有抽象方法,除非他自己页声明为abstract类。
-
抽象方法不能使用private、final 和 static 来修饰,因为这些关键字都是和重写相违背的。
本文作者:凉白茶
本文链接:https://www.cnblogs.com/zh-Note/p/16961755.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程使用 AI 从 0 到 1 写了个小工具
· 快收藏!一个技巧从此不再搞混缓存穿透和缓存击穿
· AI 插件第二弹,更强更好用
· Blazor Hybrid适配到HarmonyOS系统
· 支付宝 IoT 设备入门宝典(下)设备经营篇