我是新学者,下面这个代码中一直显示非法的字符开始,不是中英文的关心。  重点就在new inter() ;  求解~~
class outer{
private String name = "张三" ;
class inter{
public String inter(){
return name ;
}
}
new inter();
}
public class Demo01{
public static void main(String args[]){
   System.out.println(new outer());
}
}javaclass

解决方案 »

  1.   

    new inter();不能直接写在类下面,应该放在方法里。
      

  2.   

    class outer {
    private String name = "张三"; class inter {
    public String inter2() {
    return name;
    }
    }
    }再建一个测视类
    public class Test { public static void main(String[] args) {

    outer o = new outer();

    outer.inter i = o.new inter();
    System.out.println(i.inter2());
    }

    }
      

  3.   

    类里的语句要么是定义变量,定义方法,定义内部类,不能有非赋值的执行语句。
    如楼主代码上面的如果给变量赋值,就不会有错误。
    inter instacne = new inter();
      

  4.   

    帅哥 这里new inter();不是这么调用的,
    System.out.println(new outer());这里执行的时候会调用outer类的outer()这个构造方法,所以你可以自己在outer()这个构造方法里添加,然后在里面调用inter类的方法。
      

  5.   

    语法错误,new inter();不能直接放在类里.
    这个是创建对象时用的
      

  6.   

    你要创建inter类的实例不能在这里用。
    2L  的是正解
      

  7.   

    给new inter()一个引用后一切正常,没有楼主所说的非法字符的问题啊
      

  8.   

    你在写类体的时候系统并没有给类体分配内存的,只有当你创建对象的时候才会分配内存,你想想看,你写的那个,是不是在类体里就有new关键字楼上的说的都没错啊~new不要写在类体内啊~