Java面向对象基础知识之抽象类和接口

 更新时间:2021年11月08日 14:18:55   作者:一指流砂~  
这篇文章主要介绍了Java面向对象的抽象类和接口,文中有非常详细的代码示例,对正在学习java基础的小伙伴们有很好的帮助,需要的朋友可以参考下

抽象类(abstract):

抽象类不能创建实例,它只能作为父类被继承。抽象类是从多个具体类中抽象出来的父类,它具有更高层次的抽象。从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为其子类的模板,从而避免了子类的随意性。

(1) 抽象方法只作声明,而不包含实现,可以看成是没有实现体的虚方法

(2) 抽象类不能被实例化

(3) 抽象类可以但不是必须有抽象属性和抽象方法,但是一旦有了抽象方法,就一定要把这个类声明为抽象类

(4) 具体派生类必须覆盖基类的抽象方法

(5) 抽象派生类可以覆盖基类的抽象方法,也可以不覆盖。如果不覆盖,则其具体派生类必须覆盖它们

接口(interface):

(1) 接口不能被实例化

(2) 接口只能包含方法声明

(3) 接口的成员包括方法、属性、索引器、事件

(4) 接口中不能包含常量、字段(域)、构造函数、析构函数、静态成员

抽象类和接口的区别:

(1)抽象类可以有构造方法,接口中不能有构造方法。

(2)抽象类中可以有普通成员变量,接口中没有普通成员变量

(3)抽象类中可以包含静态方法,接口中不能包含静态方法

(4) 一个类可以实现多个接口,但只能继承一个抽象类。

(5)接口可以被多重实现,抽象类只能被单一继承

(6)如果抽象类实现接口,则可以把接口中方法映射到抽象类中作为抽象方法而不必实现,而在抽象类的子类中实现接口中方法

抽象类和接口的相同点:

(1) 都可以被继承

(2) 都不能被实例化

(3) 都可以包含方法声明

(4) 派生类必须实现未实现的方法

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • 教你bat脚本一键配置java开发环境

    教你bat脚本一键配置java开发环境

    公司新入职一名员工,项目经理让我安排新人工作,首先需要对java开发相关环境进行配置安装,但时常会因为安装配置不到位或者操作错误导致时间的浪费,所以在空余时间收集了一系列软件的免安装版本,感兴趣的朋友一起看看吧
    2021-12-12
  • Java8通过Function获取字段名的方法(获取实体类的字段名称)

    Java8通过Function获取字段名的方法(获取实体类的字段名称)

    Java8通过Function获取字段名。不用再硬编码,效果类似于mybatis-plus的LambdaQueryWrapper,对Java8通过Function获取字段名相关知识感兴趣的朋友一起看看吧
    2021-09-09
  • Spring中Bean的作用域与生命周期详解

    Spring中Bean的作用域与生命周期详解

    这篇文章主要给大家介绍了Spring中Bean的生命周期和作用域及实现方式的相关资料,文中介绍的非常详细,对大家具有一定的参考价值,需要的朋友们下面来一起看看吧
    2021-08-08
  • 从内存模型中了解Java final的全部细节

    从内存模型中了解Java final的全部细节

    关于final关键字,它也是我们一个经常用的关键字,可以修饰在类上、或者修饰在变量、方法上,以此看来定义它的一些不可变性!像我们经常使用的String类中,它便是final来修饰的类,并且它的字符数组也是被final所修饰的。但是一些final的一些细节你真的了解过吗
    2022-03-03
  • java类中使用Jfreechart的简单实例

    java类中使用Jfreechart的简单实例

    这篇文章介绍了java类中使用Jfreechart的简单实例,有需要的朋友可以参考一下
    2013-08-08
  • 深入理解Java8新特性之新日期时间API的应用

    深入理解Java8新特性之新日期时间API的应用

    自从 14 年发布 Java 8 以后,我们古老 java.util.Date 终于不再是我们 Java 里操作日期时间的唯一的选择,其实 Java 里的日期时间的相关 API 一直为世猿诟病,今天我们来了解新的日期时间API是怎么使用吧
    2021-11-11
  • Java字节缓冲流原理与用法详解

    Java字节缓冲流原理与用法详解

    这篇文章主要介绍了Java字节缓冲流原理与用法,结合实例形式总结分析了java字节流与缓冲区相关原理与操作技巧,需要的朋友可以参考下
    2019-09-09
  • Java实现数据脱敏(Desensitization)的操作指南

    Java实现数据脱敏(Desensitization)的操作指南

    数据脱敏是指通过对敏感数据进行部分或完全隐藏处理,保护敏感信息在存储和使用过程中的安全性,常见的应用场景包括日志记录、接口返回、报表展示、数据分析等,本文给大家介绍了Java实现数据脱敏(Desensitization)的操作指南,需要的朋友可以参考下
    2025-02-02
  • java File类的基本使用方法总结

    java File类的基本使用方法总结

    这篇文章主要介绍了java File类的基本使用方法总结,为大家分享了java实现上传代码,感兴趣的小伙伴们可以参考一下
    2016-04-04
  • java实现扫雷小游戏

    java实现扫雷小游戏

    这篇文章主要为大家详细介绍了java实现扫雷小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-01-01

最新评论