我是靠谱客的博主 踏实白开水,最近开发中收集的这篇文章主要介绍java接口设计_Java接口实现,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

实现接口

接口指定对象必须提供的协议。类可以提供接口的抽象方法的部分实现,并且在这种情况下,类必须将自身声明为抽象。

实现接口的类使用“implements”子句来指定接口的名称。“implements”子句由关键字implements,后跟逗号分隔的接口类型列表组成。

一个类可以实现多个接口。实现接口的类声明的一般语法如下:

class implements {

// Class body goes here

}

假设有一个Circle类。

public class Circle implements Shape {

void draw(){

System.out.println("draw circle");

}

}

实现接口的类必须重写以实现接口中声明的所有抽象方法。 否则,类必须声明为abstract。接口的默认方法也由实现类继承。植入类可以选择不需要重写默认方法。接口中的静态方法不会被实现类继承。

下面的代码定义了两种引用类型,一种来自Circle类,另一种来自接口类型。

Circle c = new Circle();

Shape shape = new Circle();

变量c是Circle类型。它指的是Circle对象。第二个赋值也是有效的,因为Circle类实现了Shape接口,而Circle类的每个对象也都是Shape类型。

实现接口方法

当一个类完全实现了一个接口时,它为所实现的接口的所有抽象方法提供一个实现。接口中的方法声明包括方法的约束。例如,方法声明中的throws子句是方法的约束。

import java.io.IOException;

interface Shape {

void draw(double amount) throws IOException;

}

class Main implements Shape{

@Override

public void draw(double amount) {

// TODO Auto-generated method stub

}

}

Main的代码是有效的,即使它丢弃了throws子句。当类覆盖接口方法时,允许删除约束异常。如果使用Shape类型,必须处理IOException。

import java.io.IOException;

interface Shape {

void draw(double amount) throws IOException;

}

class Main implements Shape{

@Override

public void draw(double amount) {

// TODO Auto-generated method stub

}

public void anotherMethod(){

Shape s = new Main();

try {

s.draw(0);

} catch (IOException e) {

e.printStackTrace();

}

draw(0);

}

}

实现多个接口

一个类可以实现多个接口。类实现的所有接口都在类声明中的关键字implements之后列出。

通过实现多个接口,类为所有接口中的所有抽象方法提供实现。

interface Adder {

int add(int n1, int n2);

}

interface Subtractor {

int subtract(int n1, int n2);

}

class Main implements Adder, Subtractor {

public int add(int n1, int n2) {

return n1 + n2;

}

public int subtract(int n1, int n2) {

return n1 - n2;

}

}

部分实现接口

类不必为所有方法提供实现。如果一个类不提供接口的完全实现,它必须声明为abstract。

interface Calculator {

int add(int n1, int n2);

int subtract(int n1, int n2);

}

abstract class Main implements Calculator{

public int add(int n1, int n2) {

return n1 + n2;

}

}

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

最后

以上就是踏实白开水为你收集整理的java接口设计_Java接口实现的全部内容,希望文章能够帮你解决java接口设计_Java接口实现所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部