Theo như tôi biết, bạn không thể khai báo các phương thức tĩnh trong phần thân giao diện. Tuy nhiên, vô tình tôi tìm thấy đoạn mã đặc biệt trên trang web http://docs.oracle.com/. Đây là linkPhương thức tĩnh trong giao diện java
Namelly
public interface TimeClient
{
void setTime(int hour, int minute, int second);
void setDate(int day, int month, int year);
void setDateAndTime(int day, int month, int year,
int hour, int minute, int second);
LocalDateTime getLocalDateTime();
static ZoneId getZoneId (String zoneString) {
try {
return ZoneId.of(zoneString);
} catch (DateTimeException e) {
System.err.println("Invalid time zone: " + zoneString +
"; using default time zone instead.");
return ZoneId.systemDefault();
}
}
default ZonedDateTime getZonedDateTime(String zoneString) {
return ZonedDateTime.of(getLocalDateTime(), getZoneId(zoneString));
}
}
này interface
có một phương pháp static
getZoneId
Tôi bị mất ... bất cứ ai có thể giải thích xin vui lòng
Bạn _can_ tuyên bố phương pháp tĩnh trong giao diện bắt đầu với Java 8. Cũng lưu ý các 'getZoneDateTime() 'phương thức (phương thức mở rộng ảo, cũng mới trong Java 8). – fge
Vui lòng đọc http://marioosh.5dots.pl/2014/02/12/java-8-default-and-static-methods-in-interfaces.html – Sap
Bạn chưa thấy danh sách tính năng mới của Java 8 chưa? kiểm tra nó. –