JAVA接口的基本语法

一、接口的概念

在之前学习了抽象类,其中抽象类的抽象方法定义了标准,具体的方法实现交给子类完成,之后再结合多态的特征在一定程度上解决代码的耦合(上节课的参数统一),这需要在继承关系中实现,但是继承存在单继承的局限。

今天的接口出现就解决单继承的局限,接口是也是一个特殊的类,没有自己的构造方法,在接口中只能定义全局常量、抽象方法、静态方法(虽然语法.上可以,但是一般不会在接口中去定义静态方法),要定义一个接口需要使用到一个新的关键字就是interface。

DEMO:定义接口

 
 
 

以上定义了接口,接口没有自己的构造方法,但是发现了一个很奇怪的问题:所有的方法都没有方法体,但是却没用abstrat修饰,所以在接口中抽象方法默认是可以省略abstract 的,因为默认就是抽象方法。可以省略public吗?可以省略,但是为了防止不熟悉语法的程序员出错,强烈要求不省略(规范的写上)。

DEMO: public 修饰符可以换成private吗?

 

不能使用private修饰,只能使用public 或者不写( 默认就是public)

二:接口的使用

在接口中定义了抽象方法,而且接口没有自己的构造方法,那么就意味着不能使用接口直接实例化对象,所以接口要有意义则应该有自己的实现类(就是子类),这里的接口与实现类的关系和抽象与自己的子类的关系是一样的。使用抽象类和自己的子类可以实现向.上转型从而使用多态的特征,接口也一样可以实现向上转型从而实现多态的特征。

之前抽象类的子类要继承抽象类使用的关键字是“extends",实现类要实现接口使用的关键字是“implements”。

DEMO:定义接口的实现类.

 
 

以上的EmpDAOImpl是IEmpDAO的实现子类,我们之前说了可以向上转型。

DEMO:向. 上转型实例化子类对象

 
 

有完整的Java初级,高级对应的学习路线和资料!专注于java开发。分享java基础、原理性知识、JavaWeb实战、spring全家桶、设计模式、分布式及面试资料、开源项目,助力开发者成长!

欢迎关注微信公众号:码邦主 
(0)

相关推荐

  • Java中的通配符

    一.通配符概念 其实.上很多技术点都是为了解决某一问题而出现的,那么我们在学习的过程中可以先提出问题,然后在使用我们的技术去解决. DEMO:观察问题 以上代码可以正常执行,但是如果泛型类中的类型改变 ...

  • Java向上转型和向下转型

    一.向上转型 简单的说向.上转型就是:将-一个子类类型的对象赋值给- -个父类类型的变量, 基本的实现语法: 父类类型变量=new 子 类类型(); DEMO:向上转型 发现了可以使用父类类型的变量调 ...

  • Java接口和抽象类的本质区别

    Java接口和抽象类的本质区别

  • Java接口的其他使用语法

    一.接口的其他语法 之前讲了接口的概念和定义,以及接口的子类定义等语法之外还要一些 其他的使用方式,还要掌握接口的一些其他语法. DEMO: 一个子类可以实现多个接口 如果要让一个子类实现多个接口,那 ...

  • Java接口的真正意义

    一.接口的真正意义   思考一个问题,我们生活中常用的电脑都知道吧,电脑可以连接打印机.键盘.鼠标,如果打印机.键盘.鼠标的USB型号不统一,那 就意味着我们的电脑.上的USB插口要设计出三种尺寸类型 ...

  • Java教程的基础语法大汇总

    一个Java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作.下面简要介绍下类.对象.方法和实例变量的概念. 对象:对象是类的一个实例,有状态和行为.例如,一条狗是一个对象,它的 ...

  • 超详细解读Java接口:模块通信协议以及默认方法和静态方法

    有不少学习Java的同学一直有个疑问,不仅在初学者中很普遍,连许多经验丰富的老手也很难表述清楚,那就是:Java接口到底是什么? 来看看孙鑫老师的讲解,本文干货含量拉满,这可能是距离你深入理解Java ...

  • Java 基础语法

    注释 #单行注释 // 这里是单行注释 #多行注释 /* 这里是 多行注释 */ #JavaDoc /* *@Description: *@Author: */ Java可以使用中文命名 但不建议使用 ...

  • 面试被问Java序列化和反序列化为什么要实现Serializable接口

    最近公司的在做服务化, 需要把所有model包里的类都实现Serializable接口, 同时还要显示指定serialVersionUID的值. 听到这个需求, 我脑海里就突然出现了好几个问题, 比如 ...

  • Java 基础语法 | 菜鸟教程

    Java 基础语法 一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作.下面简要介绍下类.对象.方法和实例变量的概念. 对象:对象是类的一个实例,有状态和行为.例如 ...

  • 【python笔记】python java 语法,对比学习

    【python笔记】python java 语法,对比学习