这是我第一次使用 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/