全面理解Java接口(java接口总结)

createh54个月前 (02-01)技术教程31


接口


  • 接口概念

接口(Interface),在JAVA编程语言中是一个抽象类型,是一系列方法的声明,是一些方法特征的集合。 一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。 接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。

  • 接口定义


  • 接口的特点

1.接口是隐式抽象的,当声明一个接口的时候,不必使用abstract关键字。

2.接口中每一个方法也是隐式抽象的,接口中的方法会被隐式地指定为 public abstract(只能是 public abstract,其他修饰符都会报错)。声明时同样不需要abstract关键字。

3.接口中可以含有变量,但是接口中的变量会被隐式地指定为 public static final 变量(并且只能是 public,用 private 修饰会报编译错误)。

4.接口中的方法是不能在接口中实现的,只能由实现接口的类来实现接口中的方法。

  • 抽象类和接口的区别

1.抽象类中的方法可以有方法体,就是能实现方法的具体功能,但是接口中的方法不行。

2.抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是 public static final 类型的。

3.接口中不能含有静态代码块以及静态方法(用 static 修饰的方法),而抽象类是可以有静态代码块和静态方法。

4.一个类只能继承一个抽象类,而一个类却可以实现多个接口。

  • 应用实例

//A simple interface

interface in1 {

//public,static and final

final int a = 10;

//public and abstract void display(); //在接口中的所有方法都必须只声明方法标识,而不要去声明具体的方法体。

}

为了实现这个接口,我们使用implements关键词去实现接口:

  • 接口实现

class testClass implements in1 {

//Implementing the capabilities of interface.

public void display(){

System.out.printIn("Geek");

}

其中testClass类实现了我们上面刚才定义的 in1 这个接口,既然你要实现接口,也就是实现接口代表的一种能力,那么你就必须去实现接口给你规定的方法, 只有把接口给你规定的抽象方法都给实现了,才承认你这个类实现了这个接口,实现了这个接口代表的某种功能。上图实现了接口中规定的display()方法。

//Driver Code

public static void main (String[] args) {

testClass t = new testClass();

t.display();

System.out.printIn(a);

}

写一个测试类,用来测试一下我们刚才实现的这个接口,因为testclass类的对象t实现了接口规定的display方法,那么自然而然就可以调用display()方法咯。

相关文章

Java接口讲解!什么是Java接口?Java接口的特点是什么?

#懂编程就意味着很牛吗?#这篇文章好程序员来讲讲Java接口先关内容!一、 什么是接口?接口是用关键词interface来声明的,我们知道类的声明是用class。Java接口是一系列方法的声明,是一些...

说完 Java 的 Abstract 后再来说说接口 (interface )

如你对 Abstract 修饰的抽象类不是非常了解的话,请自行先考古下。这篇文章需要对 Java 定义过的抽象类有一些基本的了解才可以。抽象类和抽象方法用 Abstract 修饰的类,叫做抽象类,那么...

今天就来随便讲讲:Java 接口和抽象类的区别吧。(详解)

在面向对象编程中,抽象类和接口是两个经常被用到的语法概念,是面向对象四大特性,以及很多设计模式、设计思想、设计原则编程实现的基础。下面就来讲讲二者的区别。什么是抽象类和接口? 区别在哪里?不同的编程语...

抽象类和接口(抽象类和接口的区别和相同点)

抽象类就像这个代码:在这个打印图形的例子当中,可以看到父类的 shape 方法并没有实际作用,主要的工作都由子类完成了,像这些没有实际工作的方法,我们就可以把它设计成一个抽象方法,包含抽象方法的类叫做...

详解Java抽象类和接口(java抽象与接口)

抽象类使用了关键字abstract声明的类叫作“抽象类”。如果一个类里包含了一个或多个抽象方法,类就必须指定成abstract(抽象)。“抽象方法”,属于一种不完整的方法,只含有一个声明,没有方法主体...

复习java接口和抽象类的作用与区别

Java接口:总结了4点关于JAVA中接口存在的意义:1、重要性:在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了...