抽象类

1、抽象方法与空方法体的方法不同之处:

public abstract void tets();

是抽象方法,但下面的就是空方法体的方法

public void test(){} 

2、抽象类和抽象方法规则:

  • 抽象类和抽象方法必须使用abstract修饰符修饰
  • 有抽象方法的类必须被定义为抽象类,但抽象类可以没有抽象方法(没有抽象方法的抽象类,作用:不想被实例化,或者是让它的子类各取所需,只覆盖要用的方法即可,如HttpServlet)
  • 抽象类不能被实例化
  • 抽象类可以包含成员变量、方法(普通和抽象方法都行)、构造器、初始化块、内部类(接口、枚举等)。抽象类的构造器不能用于创建实例,主要用来被其子类调用
  • final(表示不能被继承或重写)与abstract(表示需要继承或重写)不能同时使用 
  • abstract不能修饰成员变量、局部变量、构造器
  • static(表示方法属于类)与absrtact不能同时修饰某个方法(通过该类调用了一个没有方法体的方法会报错
  • private(子类不可见)与abstract不能同时修饰方法

3、抽象类的作用

抽象类体现的是一种模板模式,从多个具体类中抽象出来的父类,以这个抽象类作为子类的模板,子类在抽象类的基础上进行扩展、改造,但子类总体上会大致保留抽象类的行为方式。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值