美文网首页
面向对象(三)

面向对象(三)

作者: 王欢乐whl | 来源:发表于2018-11-29 11:52 被阅读0次

抽象类

一.实例

描述:
  • 定义一个抽象类Shape,具有受保护类型的x和y属性,以及公有的抽象方法获得面积。
    Rectangle类继承于Shape类,在构造方法中给父类属性x和y初始化,并重写父类中求面积的抽象方法。
    Triangle类也继承于Shape类,在构造方法中给父类属性x和y初始化,并重写父类中求面积的抽象方法。
    Cube类继承于Rectangle类,独有的属性是height,其构造方法需要调用父类的构造方法完成对x和y的初始化(立方体的底面长和宽),并对height初始化;独有的方法是求体积。
    创建上转型对象,求矩形的面积和三角形面积。
    创建对象,求立方体的体积。

二.相关代码

1.ShapeTest
主程序.png
2.Shape类
Shape.png
3.Rectangle类
矩形.png
4.Triangle类
三角形.png
5.Cube类
立方体.png

三. 注意点

1.super关键字的三个作用
  • 访问父类属性


    image.png

    调用父类构造方法


    image.png
    调用父类成员方法
2. 抽象类的说明
  • 抽象类中可以有抽象方法和非抽象方法共存
    如果一个类中含有抽象方法,则该类一定是抽象类
    子类如果继承抽象类,必须强制重写父类中的抽象方法!
3.final关键字的说明
  • final修饰的变量就是常量
    final修饰的类不能被继承
    final修饰的方法不能被子类重写
4.声明抽象方法和非抽象方法的区别:
  • 抽象方法不实现方法体;(无花括号)
  • 抽象方法实现方法体;(有)

接口

说明:
  • 和抽象类相似,但是更严格
    接口中只能有抽象方法
    接口中不能声明属性
    一个类可以实现多个接口
  • 关键字abstruct 允许在类中创建没有定义的方法——接口部分,但是没有提供具体的实现。interface关键字将产生一个完全抽象的类,该类中的所有方法都是抽象的。我们称这种类为接口。把关键字class用interface代替。
  • 接口中的成员修饰符是固定的:
    成员常量:public static final
    成员函数:public abstract
    由此得出结论,接口中的成员都是公共的权限。

抽象类与接口的区别:

链接如下:https://blog.csdn.net/jjjjjj123321/article/details/54135413

相关文章

  • 面向对象

    面向对象:OOP 面向对象三大特性

  • Java学习day-07:面向对象

    一、面向过程和面向对象 1.面向对象与面向过程的区别: 面向对象具有三大特征;封装,继承,多态;面向对象与面向过程...

  • Java 工程师成神之路 | 2019正式版

    摘要:什么是面向对象 基础篇 01面向对象 → 什么是面向对象 面向对象、面向过程 面向对象的三大基本特征和五大基...

  • Java从入门到入坑(基础篇)

    01:面向对象 1:什么是面向对象 面向对象,面向过程 面向对象的三大基本特征和五大基本原则 三大特性:封装,继承...

  • 面向对象编程

    面向对象编程 一、面向对象和面向过程 二、类和对象 三、内存图 四、构造方法 五、关键字 六、面向对象的三大特征 ...

  • JS面向对象精要(二)_函数

    JS面向对象精要(一)_原始类型和引用类型JS面向对象精要(二)_函数JS面向对象精要(三)_理解对象JS面向对象...

  • JS面向对象精要(三)_理解对象

    JS面向对象精要(一)_原始类型和引用类型JS面向对象精要(二)_函数JS面向对象精要(三)_理解对象JS面向对象...

  • JS面向对象精要(四)_构造函数和原型对象

    JS面向对象精要(一)_原始类型和引用类型JS面向对象精要(二)_函数JS面向对象精要(三)_理解对象JS面向对象...

  • JS面向对象精要(五)_继承

    JS面向对象精要(一)_原始类型和引用类型JS面向对象精要(二)_函数JS面向对象精要(三)_理解对象JS面向对象...

  • 第七篇 面向对象编程

    一、复习 二、time模块的补充 三、面向对象 四、初始面向对象和类 五、面向对象之间的交互 六、面向对象的组合 ...

网友评论

      本文标题:面向对象(三)

      本文链接:https://www.haomeiwen.com/subject/hqabqqtx.html