Ho il codice seguente:Devo inserire un'interfaccia pubblica in un file separato?
import com.apple.dnssd.*;
public interface IServiceAnnouncer {
public void registerService();
public void unregisterService();
public boolean isRegistered();
}
class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
Questo codice viene salvato in un file chiamato "HelloWorld.java". Il compilatore Java si lamenta di questo codice. Scrive che la classe IServiceAnnouncer
è pubblica e dovrebbe essere dichiarata in un file chiamato "IServiceAnnouncer.java".
Ho diverse domande su questo:
Perché il compilatore dire che
IServiceAnnouncer
è una classe? È un'interfaccia. O l'interfaccia è un caso parziale di una classe?Se inserisco l'interfaccia
IServiceAnnouncer
in un file separato chiamato "IServiceAnnouncer.java" (come vuole il compilatore), come posso usarlo da "HelloWorld.java"?Che cosa significa
public interface
? Qual è la differenza tra un'interfaccia pubblica e una non pubblica?
Non correlato alla domanda, ma per gli standard di codifica Java standard è necessario inserire "I" di fronte alle interfacce. –
@Steve Kuo: buon consiglio, ma potresti avere una parola. :-) http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html – trashgod