抽象类

抽象类特点:
A:抽象类和抽象方法必须用abstract关键字修饰
B:抽象类不一定有抽象方法,有抽象方法的类一定是抽象类
C:抽象类不能实例化
那么,如果实例化并使用呢?
按照多态的方式,由具体的子类实例化。其实这也是多态的一种,抽象类多态。
D:抽象类的子类
要么是抽象类
要么重写抽象类中的所有抽象方法

抽象类的作用:
强制要求子类必须要重写某些方法。


接口

认识接口:

不是我们现实生活中的usb接口等等实物的接口,类实现接口代表着这个类自身功能的一种扩展,所以接口代表着一种扩展的能力

接口的特点:
A:定义接口要用关键字interface表示
格式:interface 接口名 {}
B:类实现接口用implements表示
格式:class 类名 implements 接口名 {}
C:接口不能实例化
那么,接口如何实例化呢?
按照多态的方式,由具体的子类实例化。其实这也是多态的一种,接口多态。
D:接口的实现类
要么是抽象类
要么重写接口中的所有抽象方法

接口的成员特点:
A:成员变量
只能是常量。
默认修饰符:public static final
B:构造方法
没有构造方法
C:成员方法
只能是抽象方法。
默认修饰符:public abstract


接口和抽象类的关系最后分析:
抽象类和接口的区别
A:成员区别
抽象类:
  成员变量:可以是变量,也可以是常量
  构造方法:有构造方法
  成员方法:可以是抽象方法,也可以是非抽象方法
接口:
  成员变量:只能是常量。默认修饰符 public static final
  成员方法:只能是抽象方法。默认修饰符 public abstract
B:关系区别
类与类:
  继承关系。只能单继承,可以多层(重)继承。

类与接口:
  实现关系。可以单实现,也可以多实现。
  还可以在继承一个类的同时实现多个接口。

接口与接口
  继承关系。可以单继承,也可以多继承。
C:设计理念区别
  抽象类被继承体现的是:"is a"的关系。抽象类定义的是共性功能。
  接口被实现体现的是:"like a"的关系。接口定义的是扩展功能。


 

转载于:https://www.cnblogs.com/shaofanglazi/p/6705122.html

Java学习:抽象类与接口相关推荐

  1. java学习--抽象类与接口

    一.抽象 在使用抽象类时需要注意几点: 1.抽象类不能被实例化,实例化的工作应该交由它的子类来完成,它只需要有一个引用即可. 2.抽象方法必须由子类来进行重写. 3.只要包含一个抽象方法的抽象类,该方 ...

  2. 初学Java基础学习——抽象类和接口的区别

    初学Java基础学习--抽象类和接口的区别 一.关键字 1)抽象类的关键字 abstract class A{//定义一个抽象类: } class Test extends A{//子类使用exten ...

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

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

  4. Java学习之路——接口

    Java学习之路--接口 概述 总所周知,我们是父母的孩子.我们的身上既继承了爸爸的基因也继承了妈妈的基因.这就是多继承. 然而在 Java 程序中,是不支持多继承的.Java 仅仅支持单继承.但是接 ...

  5. Java中抽象类和接口在概念、语法和应用上的区别和关系

    2019独角兽企业重金招聘Python工程师标准>>> 春招开始了,盆友们都忙着准备笔试.准备面试,复习学过的知识点,当然我也不例外,在这里祝每一个"有心人"心想 ...

  6. 关于Java中抽象类和接口的一点思索

    Java中抽象类和接口的一点思索 成员方法上的区别: 1. java中的抽象类可以提供成员方法的实现细节,抽象方法只能是被public和protected来修饰 配合abstract关键字,子类需要实 ...

  7. Java学习十之接口和抽象类

    接口和抽象类 一.抽象类 1.1什么是抽象类? 抽象类是一种特殊的类 被abstract关键字修饰的类就是抽象类 修饰符 abstract class 类别{ 类体 } 在Java中,有些类不适合创建 ...

  8. java学习(七)java中抽象类及 接口

    抽象类的特点: A:抽象类和抽象方法必须用abstract关键字修饰. B:抽象类中不一定有抽象方法,但是抽象方法的类必须定义为抽象类 c: 抽象类不能被实例化,因为它不是具体的. 抽象类有构造方法, ...

  9. 关于Java的抽象类与接口

    当初学Java基础的时候很low,上课没怎么听,网课也没有一直坚持看到有关接口跟抽象类的视频,看到类与对象这一部分的视频就放弃了.太后悔了,现在对Java编程的兴趣来了,看完了狂神Javawe与Spr ...

  10. Java总结 - 抽象类与接口

    本文是自己对抽象类和接口的理解,如果不对请指正,谢谢 抽象类的简介 抽象?抽象是什么意思?之前在我的 封装继承多态 一文中提到了一个杯子的概念,简单概括一下就是嘴说出来的是一个抽象的概念,因为并不知道 ...

最新文章

  1. linux程序接口实验,Linux程序接口实验:取进程标志及用户信息
  2. pip install pygame_使用 Python 和 Pygame 模块构建一个游戏框架!
  3. php中round函数能给整数用吗,PHP四舍五入、取整、round函数使用
  4. 本月 Windows Mobile 文章推荐
  5. 2.9 go mod 之本地仓库搭建
  6. RabbitMQ 基本概念与高级特性
  7. 《像程序员一样思考》
  8. iQOO手机正式发布,全新性能旗舰打造爆燃体验
  9. 每天Leetcode 刷题 初级算法篇-杨辉三角
  10. 网优5g前景_网优行业的吐槽,附吐槽记录
  11. Codeforces Beta Round #80 (Div. 1 Only) D. Time to Raid Cowavans 分块
  12. VC利用GDI+显示透明的PNG图片
  13. 2021-09-07LRUCache机制
  14. 【线性代数笔记】秩为1的矩阵的性质
  15. ddr3配置 dsp6678_DSP6678DDR配制方法
  16. 音频amr格式怎么转成mp3-几个步骤轻松搞定
  17. 2011年分形艺术国际大赛比赛规则
  18. Intel SGX背景、其他可信计算技术和TEE技术(翻译自Intel SGX Explained)
  19. 林信良(良葛格)在CSDN上也开专栏了~
  20. C#中调用OCX控件

热门文章

  1. python pymysql模块 链接mysql 遍历查询结果的方法 详解
  2. centos6+ 将程序 注册到 service进行启动 停止 重启等:以nginx为例,添加nginx脚本
  3. 软件_git异常错误[博]
  4. 下列有关计算机系统叙述正确,()下列有关计算机系统软件的叙述正确的是____
  5. 数据/方法论固然重要,但人为分析更有价值!
  6. Ant命令编译flex时碰到的问题:[mxmlc] java.lang.OutOfMemoryError: Java heap space
  7. 计算机病毒解析与防范结束语,2016年04月30日计算机病毒解析与防范题纲_向必青.doc...
  8. 台式linux桌面远程链接华为云windows服务器桌面
  9. linux管理包安装软件命令,和vi/vim使用方法
  10. python os库