今天在练习借口的时候,写了个程序如下:
public  interface playwithanimal
{
public void eat();
public void play();
}
 class people 
{
people(int age,String name,String zhiye )
{
this.age=age;
this.name=name;
this.zhiye=zhiye;
}
private int age;
private String name;
private String zhiye;public int _age(){return age;
}
public String _name(){
return name;}
public String _zhiye(){
return zhiye;
}}class worker extends people implements playwithanimal
{
worker(int age,String name,String zhiye){super(age,name,zhiye);
}public void eat(){
System.out.println("Workers feed pet");
}public void play(){
    System.out.println("Workers play with pet");
}}class farmer extends people implements playwithanimal
{
farmer(int age, String name, String zhiye ){


super(age,name,zhiye);

}
public void eat(){
System.out.println("农民喂宠物");
}public void play(){
    System.out.println("农民宠物玩");
}
}
class ganbu extends people implements playwithanimal{
  ganbu(int age, String name ,String zhiye){super(age,name,zhiye);
  }
public void eat(){
System.out.println("国家干部喂宠物");
}public void play(){
    System.out.println("国家干部宠物玩");
}
}
public class interfacetest
{
public static void main(String[] args){
worker worker1 = new worker(35,"张三","工人");worker1.eat();worker1.play(); farmer farmer1 =new farmer(54,"李四","农民");farmer1.eat();farmer1.play(); ganbu ganbu1 =new ganbu(66,"王五","国家干部");ganbu1.eat();
ganbu1.play();}
}
程序第一句定义接口的时候没有写public,编译通过,但是我写上了public后报错了。
报错提示如下:F:\>javac interfacetest.java
interfacetest.java:2: 类 playwithanimal 是公共的,应在名为 playwithanimal.java
的文件中声明
public  interface playwithanimal
        ^
1 错误
请问这是问什么,谢谢!!!!