当前位置: 移动技术网 > IT编程>开发语言>Java > JAVA_接口

JAVA_接口

2020年07月17日  | 移动技术网IT编程  | 我要评论

接口相关说明

java成为面向对象编程语言的原因是有两种机制存在:抽象类(abstract class)和接口(interface)

接口只是一个规范(其重要程度可以理解为word目录),里面的方法都是空的,可以理解为一系列方法和特征的集合,是某个事物对外提供的一些功能的说明

接口是特殊的抽象类(抽象类可以理解为没有必要实现的类)

java是单继承的,接口可以弥补一个类实现多个接口

接口的声明

[可见度] interface 接口名称 [extends 其他的接口名] {
        // 声明变量
        // 抽象方法
}

eg

/* 文件名 : NameOfInterface.java */
import java.lang.*;
//引入包
 
public interface NameOfInterface
{
   //任何类型 final, static 字段
   //抽象方法
}
/* 文件名 : Animal.java */
interface Animal {
   public void eat();
   public void travel();
}

接口的实现

...implements 接口名称[, 其他接口名称, 其他接口名称..., ...] ...

eg

/* 文件名 : MammalInt.java */
public class MammalInt implements Animal{
 
   public void eat(){
      System.out.println("Mammal eats");
   }
 
   public void travel(){
      System.out.println("Mammal travels");
   } 
 
   public int noOfLegs(){
      return 0;
   }
 
   public static void main(String args[]){
      MammalInt m = new MammalInt();
      m.eat();
      m.travel();
   }
}

接口的继承

// 文件名: Sports.java
public interface Sports
{
   public void setHomeTeam(String name);
   public void setVisitingTeam(String name);
}
 
// 文件名: Football.java
public interface Football extends Sports
{
   public void homeTeamScored(int points);
   public void visitingTeamScored(int points);
   public void endOfQuarter(int quarter);
}
 
// 文件名: Hockey.java
public interface Hockey extends Sports
{
   public void homeGoalScored();
   public void visitingGoalScored();
   public void endOfPeriod(int period);
   public void overtimePeriod(int ot);
}

接口的意义

让代码有更强的可拓展性

有利于代码的规范、后期维护

保证代码的低耦合

让代码更安全、严密

接口和抽象类区别

抽象类体现的是模板式设计(可以有非抽象方法、可以定义静态方法、可以有普通变量)

接口体现的是一种规范(只能有抽象方法、不可以定义静态方法、变量全部为静态常量)

接口的实际应用

 

本文地址:https://blog.csdn.net/qq_39944780/article/details/107362172

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网