课程
/后端开发
/Java
/Java入门第二季 升级版
课程中调用内部类的方法是mi.print();
为什么练习中的调用内部类的方法不能写成newScore.getScore();
2015-10-18
源自:Java入门第二季 升级版 7-8
正在回答
应该是
// 创建方法内部类的对象
MInner mi= new MInner();
// 调用内部类的方法
int newScore=mi.getScore();
我明白你的意思,原因是:
课程中内部类的print()方法是有输出功能的,而练习中将这个输出功能放在了getScore方法外面,getScore方法只是返回了一个数值,所以我们要做的就是将这个值赋给下面要输出的newScore。
方法内部类的方法的调用是在外部类的方法里,就是public void show(){}里面,调用方法内部类的方法先创建内部类对象MInner newScore=new MInner();在调用newScore.getScore();你的对象创错了
这个方法内部类和前面讲到的调用方法是不一样的,这个是在方法里面创建了对象并用对象调用了内部内的方法,也就是在方法里面调用了 内部类,因此我们在调用外部内类方法的时候同时就是调用了内部类。
或者说你这个方法是不可以被调用的
那就代表你这个对象里面没有这个方法,
你调用一个方法 首先得要得到这个对象吧,我是认为应该这样写new Score().getScore();....我也是小白
紫秋雨 提问者
举报
课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙
1 回答内部类中定义的方法不能在内部类中调用吗
1 回答在eclipse中练习内部类报错
3 回答为什么方法内部内调用内部类的方法不应该这样吗?
4 回答非静态变量在内部类中调用为什么不用写成HelloWorld.this.score?
1 回答为什么在内部类中用this是指外部类的呀