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

请问这样的写法不可以吗?

//外部类
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();
 }
}

提问者:苍井窿_ 2016-11-13 15:54

个回答

  • 大锅饭咕
    2016-11-13 16:04:25
    已采纳

    http://img.mukewang.com/58281e33000193d704990033.jpg

    这个newScore是你创建的内部类对象,不是一个变量,这块应该是newScore.getjScore();

  • 慕函数4910142
    2016-11-15 09:55:55

    newScore只是你创建的对象,你没赋值,没定义变量类型没用,如果想要直接调用内部类的方法显示如下就可以:

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

  • 慕粉4345275
    2016-11-13 16:05:51

    如果想要获取地址,则需要调用toString()的方法

  • 慕粉4345275
    2016-11-13 16:04:28

    方法内部类只能在方法中调用