目录

1. 抽象类的特点

2. 接口的特点

3. 抽象类和接口的区别


1. 抽象类的特点

  • 抽象类可以有构造方法,但不能直接使用new调用构造方法进行实例化。需要通过非抽象子类的new,来间接的调用父类的构造方法进行实例化
  • 抽象类中,可以存在普通属性、方法和静态属性、方法
  • 抽象类中可以存在抽象方法, 也可以存在非抽象方法、
  • 有抽象方法的类一定是抽象类,但抽象类中不一定有抽象方法
  • 如果父类是抽象类,子类继承父类时,需要重写父类的抽象方法或者子类变成抽象类

2. 接口的特点

  • 在接口中,只有方法的声明,没有方法体且方法永远都被public来修饰
  • 在接口中,定义的变量会自动的加上public、static、final
  • 接口中没有构造方法,也不能被实例化
  • 接口之间可以实现多继承
  • 对于接口中实现的方法,普通的方法没有方法体,用static修饰的方法可以具有方法体,在1.8jdk中,用default修饰的方法也可以具有方法体
  • 不允许出现静态代码块和实例代码块

3. 抽象类和接口的区别

  • 接口不能有构造方法,抽象类可以有。(都不能实例化)

  • 接口不能有方法体,抽象类可以有。 (接口中只能有抽象方法)

  • 接口不能有静态代码块,抽象类可以有。

  • 接口中变量必须是public static final, 而在抽象类中没有要求。

4. 相关题目

【面向对象】抽象类和接口相关推荐

  1. Java基础学习第十二讲:Java面向对象---抽象类和接口

    Java面向对象-抽象类和接口 一.抽象类 抽象的定义: 我们在日常生活中,经常通过总结一些事物的共性来对事物进行分类,这种共性可能是一些相同的属性,也可能是一些相同的动作.通过总结,我们能够清晰的划 ...

  2. 面向对象 抽象类与接口类

    ############  复习 ############### - 先抽象再继承 ########## 接口类与抽象类 接口类 继承有两种用途: 一:继承基类的方法,并且做出自己的改变或者扩展(代码 ...

  3. java面向对象抽象类和接口

    抽象方法和抽象类 (1)一个抽象类中可以不定义抽象方法,但是只要类中有一个抽象方法,则该类一定是抽象类 (2)抽象类不能被实例化,即不能被new创建一个实例对象. (3)如果一个子类继承一个抽象类,则 ...

  4. java面向对象-抽象类和接口

    抽象类(abstract没有足够的信息来描述) 被abstract修饰的类就是抽象类,修饰的方法就是抽象方法. 抽象类中可以没有抽象方法,但有抽象方法的类必须要声明为抽象类. 抽象类不能使用new来创 ...

  5. Java 面向对象 抽象类与接口

    在类的继承中,如果一个个新的子类被定义,子类变得越来越具体,父类变得更加一般和通用,类的设计应该保证父子类能够共享特征,有时将父类设计得非常抽象,使得父类没有具体的实现,这样的类叫做抽象类:一般当我们 ...

  6. 面向对象-抽象类与接口

    1. 抽象类 1.1 什么叫做抽象类 java中有一个类,派生出很多子类而自身不能用来生产对象,这种类叫做抽象类,抽象类的作用有点类似"模板",其目的的是要设计者依据它的格式,来修 ...

  7. Java面向对象—抽象类和接口

    目录 抽象类 什么是抽象类? 1.抽象方法 2.抽象类 实现抽象类中的方法 抽象类使用的意义 接口 什么是接口? 接口的意义 抽象类 什么是抽象类? 1.抽象方法 当一个类没有具体的方法体时,且被ab ...

  8. 《Java技术》第三次作业--面向对象——继承、抽象类、接口

    1.阅读下面程序,分析是否能编译通过?如果不能,说明原因.应该如何修改?程序的运行结果是什么?为什么子类的构造方法在运行之前,必须调用父 类的构造方法?能不能反过来? class Grandparen ...

  9. 问题小结(二)——maven的核心功能、面向对象编程和面向接口编程的区别、抽象类和接口的区别等

    文章目录 1. Java创建对象有哪四种方式? 2. 什么是maven?maven的核心功能有哪些? 3. 什么是MVC?说说分层的好处. 4. Spring的两大核心技术是什么? 5. 什么是IOC ...

  10. Java第五次作业--面向对象高级特性(抽象类和接口)

    一.学习要点 认真看书并查阅相关资料,掌握以下内容: 掌握抽象类的设计 掌握接口的设计 理解简单工厂设计模式 理解抽象类和接口的区别 掌握包装类的应用 掌握对象的比较方法和比较器的使用 学习使用日期操 ...

最新文章

  1. blast程序 介绍 简介
  2. XML —— DTD介绍
  3. google账号解除游戏绑定_成长守护平台解除实名认证 公众号解绑操作流程
  4. Eclipse配置自动补齐键为alt+/
  5. 寄存器分配图着色_【02】从零开始的卡通渲染-着色篇1
  6. spring的环境配置(beans profile=xxx)
  7. 树状数组萌新讲解+基础习题【一点一滴】
  8. 人类的悲欢虽不相通,但电脑情感分析模型读得懂
  9. 删除悬镜linux安装教程,Linux安全运维之如何活用history命令
  10. 【渝粤教育】电大中专电商运营实操 (12)作业 题库
  11. Selenium之利用Excel实现参数化
  12. python常见变量数据类型_【python基础】常见的变量、数据类型、运算符
  13. 你以为我在玩游戏?其实我在学 Java
  14. 实验报告二:例2-19 一位全加器
  15. 高拍仪Linux系统(银河麒麟/统信uos系统)二次开发
  16. DTCC 年度最佳创新产品丨真正的 HTAP 数据库是怎样炼成的?
  17. WORD 毕设页眉页码目录标题 排版
  18. OpenFeign 夺命连环 9问
  19. mysql函数名称顿号,快速统计一个单元格内有多少个名字,你不会是一个一个数的吧...
  20. 你看到的好片子,原来藏着这么多黑科技……

热门文章

  1. pandas中quantile函数浅解
  2. 19:Structured Streaming:Windows操作和WaterMarker-流处理引擎提供了哪些优秀机制
  3. 牛客网sql题详解11-20
  4. 获取银行简码类(php)
  5. Selenium启动常用浏览器
  6. java快速排序两种方法
  7. 星系测光:理论基础与实操
  8. TDengine3.0流式计算引擎语法规则介绍
  9. 暴风AI电视获双11人工智能品类销量第一
  10. DBA生存警示:保护现场不要让事情更糟