public class TestGreeting { 
    public static void main (String[] args)
  
      { 
         Greeing hello = new Greeting();
          hello.greet();
           }
 
class Greeting 
 {
 class greet
    {
     System.out.println("hi");
    }
 }
}
编译出错:E:\java>javac TestGreeting.java
TestGreeting.java:15: 需要 <标识符>
     System.out.println("hi");
                       ^
TestGreeting.java:15: 非法的类型开始
     System.out.println("hi");
                        ^
2 错误

解决方案 »

  1.   

    估计你不是要内部类的
    对照一下下面的代码,看看吧。
    public class TestGreeting{
    public static void main(String[] args) {
    Greeting hello = new Greeting();
    hello.greet();
    }}class Greeting {//如果不是内部类,这个不应该放在上面的类体里面
    void greet() {//函数不是你那样写的。。
    System.out.println("hi");
    }
    }
    看书的时候把附带的示例自己敲一遍,好好理解。
      

  2.   

    void greet() {
         System.out.println("hi");
        }
      

  3.   

    楼主先试试一楼说的
    最好
    public void greet() { // 加上访问修饰符 这个楼主可以百度了解一下 友好的有时会添麻烦
         System.out.println("hi");
        }