问答详情
源自:7-8 Java 中的方法内部类

为什么newScore不能做方法内部类的对象啊??

public class HelloWorld {

    

    private String name = "爱慕课";

    

    // 外部类中的show方法

    public void show() { 

// 定义方法内部类

class MInner {

int score = 83;

public int getScore() {

return score + 10;

}

}

        

// 创建方法内部类的对象

        MInner newScore=new MInner();

        

        // 调用内部类的方法

newScore.getScore();

        

System.out.println("姓名:" + name + "\n加分后的成绩:" + newScore);

}

    

// 测试方法内部类

public static void main(String[] args) {

        

// 创建外部类的对象

        HelloWorld mo=new HelloWorld();

        

        // 调用外部类的方法

mo.show();

}

}


提问者:等风吹c 2018-07-05 19:36

个回答

  • 芥子晴空
    2018-07-27 16:51:26

    // 创建方法内部类的对象

        MInner i = new MInner();

    // 调用内部类的方法

       int newScore = i.getScore();


  • 薛某某的猫
    2018-07-15 22:41:44

    你好,按照题目的意思newScore应该是一个int型的变量,所以你的MInner newScore=new MInner();语句不正确,创建的对象名不能是newScore。你可以改下例如改为MInner mi=new MInner();即创建一个名为mi的方法内部类对象,然后声明一个题目要求的名为newScore的int变量接受方法返回值, 即int newScore =im.getScore();

  • 慕虎4594652
    2018-07-09 21:26:30

    你确定你这样创建内部类对象 有意义吗 为什么不在main函数里创建呢?


  • 等风吹c
    2018-07-05 19:41:28

    好像明白了,这样输出的只是对象名,并没有输出方法的结果 ,,