抽象类和抽象方法的使用

有时候将一个类设计的非常抽象,以至于他没有具体的实例,这样的类叫做抽象类。

abstract关键字的使用

1、abstract可以用来修饰结构、类、方法

2、一旦父类抽象了,就不可以再实例化造对象

ps:父类还是应该提供构造器,便于子类实例化时调用super()

3、开发中,都会提供抽象类的子类,让子类实例化,完成相关操作

4、abstract修饰方法,没有方法体

这个例子不是没有方法体,不是抽象方法

public void eat(){
}

抽象方法的定义:只有方法的声明,没有方法体

public abstract void eat();

如果一个类中存在抽象方法,那么这个类中一定不能造对象,所以这个类一定是个抽象类

------->包含抽象方法的类一定是个抽象类

反之,抽象类里面的方法不一定是抽象方法

若子类重写了父类中所有抽象方法后,此子类方可实例化

若子类没有重写了父类中所有抽象方法,此子类也必须声明为抽象类

抽象类一定有子类!(不然他又没法造对象,就失去了这个类的意义)

抽象类的子类,如果这个父类抽象类中有抽象方法,那么一定要重写该抽象方法或者子类也定义为抽象类

abstract 不可以修饰私有方法、静态方法(静态方法在子类中不算重写,这样会导致没有办法重写这样的静态方法如果又声明为抽象的,则需要在子类中重写,矛盾)、final的方法、final的类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

passforbid

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值