Java基础篇——abstract关键字

Java基础篇——abstract关键字,第1张

Java基础篇——abstract关键字 1、抽象类

包含抽象方法的类,就一定是抽象类。
但不表示抽象类必须包含抽象方法。
如果子类继承抽象类,就必须重写所有抽象方法,如果不想全部重写,那就把子类定义成抽象类。

写做:

(public) abstract class Demo{}

不能实例化,就是说new不了。它是代表一种类型,而创建对象是具体的。
但有自己的构造方法;(可能因为毕竟是继承吧,继承的话就需要父类属性跟实例方法,所以它需要给子类提供构造方法,但它本身不能实例化。)
可以包含普通方法(非抽象方法),也就是一般带方法体的方法;
不能用final修饰,因为抽象类需要通过继承来实现抽象方法。

2、抽象方法

没有方法实现,不能直接调用;
不能用private修饰,因为子类要实现它;
不能用static修饰,因为static会分配内存,但它没有方法体呀,这样做没有意义。

3、this

this代表当前发起调用的类。

4、super

子类不能调用抽象父类的抽象方法。

二、好处

1、不能被实例化,通过方法的覆盖实现多态,即运行时绑定;
2、事物共性提出来,子类通过继承实现,代码易维护、扩展。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5684506.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存