day12 抽象类和抽象方法

抽象(abstract)方法

当父类的某些方法,但又不确定如何实现时,可以将其声明为抽象方法,该方法所在的类称为抽象类。
抽象方法就是没有实现的方法,它没有方法体。

public abstract void abstractMethod();

抽象类

当一个类中含有一个或多个抽象方法时,必须将该类声明为抽象类

abstract class AbstractClass{
	public abstract void abstractMethod();
}

通常来说,抽象类会被继承,由其子类来实现它的抽象方法。

abstract关键字

  1. 用abstract关键字修饰一个方法,该方法就是抽象方法
  2. 用abstract关键字修饰一个类,该类就是抽象类
  3. 抽象类的价值更多在于设计,设计好之后由子类来继承并实现抽象类
  4. 抽象类在框架和设计模式中使用较多
  5. abstract只能用来修饰类和方法,不能用来修饰属性

抽象类的特点

  1. 抽象类不能实例化

  2. 抽象类不一定要包含抽象方法;若一个类有抽象方法,则必须声明为抽象类

  3. 抽象类可以有任意成员,因为抽象类的本质是类

  4. 抽象方法不可以有方法体

    public abstract void abstractMethod(){} // ×
    
  5. 一个类继承了抽象类,就要实现抽象的所有抽象方法,除非子类自己也是抽象类。所谓实现,有方法体就是实现。仅仅使用{}也算实现。

  6. 抽象方法不可以用private、final、static来修饰

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值