张进酒
2019-01-02 21:25
//外部类
public class HelloWorld {
private String name = "爱慕课";
// 外部类中的show方法
public void show() {
// 定义方法内部类
class MInner {
int score = 83;
public int getScore() {
int newScore;
newScore=score + 10;
return newScore;
System.out.println("姓名:" + HelloWorld.this.name + "\n加分后的成绩:" + newScore);
}
}
// 创建方法内部类的对象
MInner si=new MInner();
// 调用内部类的方法
si.getScore();
}
// 测试方法内部类
public static void main(String[] args) {
// 创建外部类的对象
HelloWorld mo=new HelloWorld();
// 调用外部类的方法
mo.show();
}
}
首先看到你的代码我感觉你并不怎么注意代码的位置,看着很乱,明明是方法内部类你却顶格写,而不是放在方法下方靠右,让我不解。输出语句放在调用方法类内部时你要先对其进行变量的赋值才对,不然电脑怎么知道newScore在哪里,他不可能调用方法内部类的方法去解决的,因为没有访问权限啊!改成下面这样就可以了
int newScore = si.getScore();
System.out.println("姓名:" + Huida.this.name + "\n加分后的成绩:" + newScore);
你都return了 后面都无效了...
Java入门第二季 升级版
530559 学习 · 6091 问题
相似问题
回答 1
回答 2