Hola,
Cita:
Iniciado por masterpuppet
... y te sugiero que te des una vuelta por el manual, suele ahorrarte este tipo de problemas, ...
La cita específica del manual:
Cita: Todos los métodos declarados en una interfaz deben ser public, ya que ésta es la naturaleza de una interfaz.
Pero ... ¿porqué?. Es muy importante conocer la diferencia, cuando se crean interfaces tienes que pensar en una 'comunicación' entre componentes, y no como pensaba Copia, una segunda 'definición' de clases. El manual es muy bueno para sacarte de dudas rápido, como las páginas 'man' de linux, una simple introducción al comando para cuando se te olvida algo. Pero la pregunta es puramente de programación orientada a objetos, igual se aplica en Java, C# o cualquier otro lenguaje orientado a objetos, y en ningún manual te explica por qué, esto solamente lo obtienes en foros del web o un tutorial avanzado de programación orientada a objetos. :D
En resúmen .. usa public, porque sino no corre.
Saludos,