Per quanto ne so non è possibile dichiarare metodi statici nel corpo dell'interfaccia. Tuttavia, ho trovato per caso un pezzo di codice particolare sul sito http://docs.oracle.com/. Ecco il linkMetodi statici nell'interfaccia 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));
}
}
questo interface
ha un metodo static
getZoneId
sono perduto ... qualcuno potrebbe spiegare per favore
se _potete_ dichiarare metodi statici in interfacce a partire da Java 8. Nota anche il 'getZoneDateTime() 'metodo (metodo di estensione virtuale, anche nuovo in Java 8). – fge
Si prega di leggere questo http://marioosh.5dots.pl/2014/02/12/java-8-default-and-static-methods-in-interfaces.html – Sap
Non hai visto il nuovo elenco di funzionalità di Java 8? controllalo. –