Java接口(interface)实现

标签 java

这是我第一次使用 java 界面,我很困惑。在阅读在线教程后,这就是我想出的如何定义接口(interface)并实现它的方法,但是小时、分钟和秒上有红色下划线。我不明白为什么会这样。

interface myClock {

    int hours;
    int minutes;
    int seconds;

    public void clock();
    public void clock(int x, int y, int z);
    public void setTime(int x, int y, int z);
    public void incTimeBySec();
    public void incTimeByMins(int x);
    public void display12hr();
    public void  display24hr();
}

class time implements myClock {

    public void clock() {
        hours   = 0;
        minutes = 0;
        seconds = 0;
    }

    public void clock(int x, int y, int z) {
        hours   = x;
        minutes = y;
        seconds = z;
    }

    public void setTime(int x, int y, int z) {
        hours = x;
        minutes = y;
        seconds = z;
    }

    public void incTimeBySec() {    
        if(seconds+1>60) {
            seconds = (seconds+1)-60;
            minutes++;
            hours++;
        } else {
            seconds+=1;
        }
    }
}

最佳答案

接口(interface)仅定义方法。除静态数据外,没有任何数据成员。

我建议您学习 Java 编码标准。您没有遵循它们(例如,类和接口(interface)名称应该大写。)

public interface MyClock {
    void setTime(int x, int y, int z);
    void incTimeBySec();
    void incTimeByMins(int x);
    void display12hr();
    void  display24hr();
}

我不建议您这样做,除非您只是想了解接口(interface)。 Java Date 类比您以前更好地实现了所有这些方法。使用您可用的资源。

更新:由于 JDK 8 接口(interface)可以有 default implementations .

关于Java接口(interface)实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18686426/

相关文章:

java - 如何在JList中设置背景颜色和字体大小?

java - 如何在基于 Java 的自定义 Web 服务器中集成 Windows 身份验证 (SSO)?

java - ksoap2 org.xmlpull.v1.xmlpullparserexception 预期 start_tag 错误

ASM 中的 Java 方法参数值

java - Selenium 和 TestNG 同时使用 'dependsOn' 和 'priority =' 问题

java - 在哪里放置 SSL keystore (.jks) 以及如何从 .jar 访问它?

java - 如何在 hibernate 中限制对象属性中的集合?

java - 为什么我的线程不工作?

java - ClassFormatException io.qameta.allure.aspects.StepsAspects : Invalid byte tag in constant pool: 18

访问 hashmap 时出现 java.util.ConcurrentModificationException