语法错误。
在外部类中分别调用静态内部类的成员属性(包括静态和非静态的)的方法没错吧? 那为什么会在 “;” 处有这个错误:Syntax error on token ";", invalid AssignmentOperator
代码如下:
package com.imooc.test;
class Outer{
private int m;
public void print() {
new Outer.Inner().eat();
new Outer.Inner().n;
Outer.Inner.k;
Outer.Inner.play();
}
public static class Inner{
public int n;
public static int k;
public void eat() {
System.out.println("eat");
}
public static void play() {
System.out.println("play");
}
}
}
正在回答
你好!new Outer.Inner().n;这条语句只是一个变量放在这里,要进行赋值才可以。如:new Outer.Inner().n=10;
Outer.Inner.k;这条语句也要赋值,不然同样会出错。
当然如果把n和k的值输出也可以,参与其他运算也可以,总之不能直接把变量作为一个表达式语句。
祝学习愉快!
补充:在new Outer.Inner().n; 这句提示语法错误
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星