我写了一个程序,其中有一个接口是这样定义的:
Hello.java:
package com.test;
public interface Hello {
    public String hello();
}
一个类是这样的定义的:
HelloService.java
package com.test;
public HelloService implements Hello {
  private String _greeting = "Hello, world";  public void setGreeting(String greeting)
  {
    _greeting = greeting;
  }  public String hello()
  {
    return _greeting;
  }
}
可是我编译的时候却出现:
HelloService.java:3: cannot find symbol
symbol: class Hello
public class HelloService implements Hello {
                                     ^
1 error
而这两个文件都在com/test/目录下面.

解决方案 »

  1.   

    HelloService.java 少了class,在public后面,还有要先编译接口,再编译类。
      

  2.   

    在com所在的目录下,执行: javac HelloService.java
    然后执行 java HelloService
      

  3.   

    不好意思,应该要在文件名前加上包名 com.test
      

  4.   

    javac com/test/HelloService.javajava com.test.HelloService
      

  5.   

    public   HelloService   implements   Hello   这里编译你可以通过?
      

  6.   

    就是因为代码:
    public       HelloService       implements       Hello中HelloService前少了 关键字,你的编译错误.
      

  7.   

    public   HelloService   implements   Hello   { 
    楼主  把基础给打扎实啦啊!!!
      

  8.   

    public 后面的class都丢了,怎么会不出错误啊?