文档

Java™ 教程
跟踪: 学习 Java 语言
课程: 接口与继承
首页 > 学习Java语言 > 接口和继承

问题和练习答案:接口

问题

问题1:一个实现了java.lang.CharSequence接口的类必须实现哪些方法?
答案1: charAtlengthsubSequencetoString

问题2:下面的接口有什么问题?

public interface SomethingIsWrong {
    void aMethod(int aValue) {
        System.out.println("Hi Mom");
    }
}

答案2:它在接口中有一个方法实现。只有默认方法和静态方法有实现。

问题3:修复问题2中的接口。
答案3:

public interface SomethingIsWrong {
    void aMethod(int aValue);
}

或者,您可以将aMethod定义为默认方法:

public interface SomethingIsWrong {
    default void aMethod(int aValue) {
        System.out.println("Hi Mom");
    }
}

问题4:下面的接口是否有效?

public interface Marker {
}

答案4:是的。不需要方法。空接口可用作类型,并标记不需要任何特定方法实现的类。有关有用的空接口示例,请参阅java.io.Serializable。

练习

练习1:编写一个实现java.lang包中的CharSequence接口的类。您的实现应该将字符串反向返回。选择本书中的一个句子作为数据来使用。编写一个小的main方法来测试您的类;确保调用所有四个方法。
答案1:请参阅CharSequenceDemo.java

练习2:假设您已经编写了一个时间服务器,该服务器周期性地向其客户端通知当前的日期和时间。编写一个接口,服务器可以使用该接口来强制执行特定的协议。
答案2:请参阅TimeClient.java


上一页:问题和练习:接口