abstract使用的小细节之一
为什么抽象方法(即用abstract关键字修饰的方法)不能使用private、final和static来修饰?
知识迁移
如果一个类继承了抽象类,则它必须实现抽象类的所有抽象方法,除非它自己也去声明为abstract类,即子类需要对父类的abstract方法进行方法重写/方法覆盖
解释说明
private为私有的访问修饰符,访问权限为本类,所以如果父类的抽象方法的访问修饰符为private,则子类不能访问父类的该方法,也不能对该方法进行方法重写/方法覆盖
如果final关键字修饰了父类,则子类不能进行方法重写/方法覆盖
方法重写/方法覆盖的定义是父类的其中一个子类对父类的方法进行重写,且重写后的方法只适用于该子类。而static关键字修饰的成员只要在一个地方改变了,那么在其他任何能访问到该成员的地方也随之改变,与上述成员方法的定义不相符
写在后面
以上所说皆是笔者自己的所学所悟,总结出来也是想给学习过程中对此有疑惑的小伙伴们一些帮助,希望起到抛砖引玉的效果。如果有小伙伴发现笔者的错误或者是不够严谨,亦或是有不理解的地方,欢迎私信笔者进行探讨。如果读者小伙伴觉得笔者写的不错的话,欢迎点赞评论,你们的支持将是笔者创作的最大动力!