抽象方法

简介: 抽象方法

引出抽象

求圆 ,矩形,三角形,面积

发现的问题

每一个图形计算面积的方式都不一样,所以每一个类都必须得要覆盖父类当中的 getArea方法,来去实现求面积的方式

带来的问题

怎么样保证子类必须得要覆盖父类当中定义的方法。父类不需要提供方法体

抽象方法

格式

在方法前面添加了一个关键字 abstract

抽象方法特点

  1. 抽象方法是没有方法体的
  2. 抽象方法必须得要定义在抽象类或接口当中
  3. 抽象方法不能是私有的 private,final, static

注意点

子类必须得要去覆盖此方法,在定义的时候不要方法体了。

抽象类

概念

abstract 修饰的类,就成为了抽象类,抽象类必须得要有子类才行。(抽象类一般都当作父类来继承)

抽象类当中的注意点

  1. 抽象类是不能直接创建对象的。
  2. 抽象类当中,可以有抽象方法 ,也可以有非抽象方法(普通方法:给子类调用的)
  3. 子类没有去覆盖抽象方法,把子类也变成抽象类
  4. 构造方法不能定义为私有化 (抽象方法必须得要让子类继承之后,才能实现内部的方法体。子类继承的话,先去调用父类的构造方法)
  5. 抽象类不能使用 final 来去修饰

抽象类与普通的类有什么区别

  • 普通类你有的(方法 ,字段,构造器),抽象类都有
  • 抽象不能创建对象。抽象类可以包含抽象方法,也可以包含非抽象方法
  • 抽象类必须有子类才有意义

相关文章
|
5月前
抽象类
如何使用如何使用抽象类和抽象方法: 1.不能直接创建new抽象类对象。 2.必须用一个子类来继承抽象父类 3.子类必须覆盖重写抽象父类当中所有的抽象方法 4.创建子类对象进行使用 关于抽象类: 1.抽象类不能创建对象,只能创建器非抽象的子类对象 2.抽象类中,可以有构造方法,是子类创建对象时,初始化父类成员用的。 3.抽象类中,不一定包含抽象方法,但是有抽象方法的类必定是抽象类 4.抽象类的子类,必须重新抽象父类中的所有抽象方法和抽象方法: 1.不能直接创建new抽象类对象。 2.必须用一个子类来继承抽象父类 3.子类必须覆盖重写抽象父类当中所有的抽象方法
28 0
|
5月前
|
程序员 C#
C#抽象类和抽象方法详解
C#抽象类和抽象方法详解
57 0
|
5月前
|
存储
抽象类为什么有抽象方法?
抽象类为什么有抽象方法?
|
5月前
抽象方法
如何使用如何使用抽象类和抽象方法: 1.不能直接创建new抽象类对象。 2.必须用一个子类来继承抽象父类 3.子类必须覆盖重写抽象父类当中所有的抽象方法 4.创建子类对象进行使用 关于抽象类: 1.抽象类不能创建对象,只能创建器非抽象的子类对象 2.抽象类中,可以有构造方法,是子类创建对象时,初始化父类成员用的。 3.抽象类中,不一定包含抽象方法,但是有抽象方法的类必定是抽象类 4.抽象类的子类,必须重新抽象父类中的所有抽象方法和抽象方法: 1.不能直接创建new抽象类对象。 2.必须用一个子类来继承抽象父类 3.子类必须覆盖重写抽象父类当中所有的抽象方法
49 8
|
5月前
3.抽象类
如何使用如何使用抽象类和抽象方法: 1.不能直接创建new抽象类对象。 2.必须用一个子类来继承抽象父类 3.子类必须覆盖重写抽象父类当中所有的抽象方法 4.创建子类对象进行使用 关于抽象类: 1.抽象类不能创建对象,只能创建器非抽象的子类对象 2.抽象类中,可以有构造方法,是子类创建对象时,初始化父类成员用的。 3.抽象类中,不一定包含抽象方法,但是有抽象方法的类必定是抽象类 4.抽象类的子类,必须重新抽象父类中的所有抽象方法和抽象方法: 1.不能直接创建new抽象类对象。 2.必须用一个子类来继承抽象父类 3.子类必须覆盖重写抽象父类当中所有的抽象方法
28 0
|
3月前
|
Java API
解决HTTP 400 Bad Request错误的方法
解决HTTP 400 Bad Request错误的方法
|
5月前
|
自然语言处理 数据可视化 机器人
使用ChatGPT生成思维导图
使用ChatGPT生成思维导图
173 0
|
5月前
AutoJs4.1.0实战教程---抖音极速版点赞加关注代码
AutoJs4.1.0实战教程---抖音极速版点赞加关注代码
100 0
|
11月前
|
编解码 JavaScript 算法
vue封装即引即用的评论组件
vue封装即引即用的评论组件
75 0