以直接创建内部类对象 Inner i=new Inner(); 为什么非得 HelloWorld hello=new HelloWorld(); Inner i =hello.new.Inner(); 不明白!

来源:7-7 Java 中的静态内部类

qq_精神爽i_0

2018-03-29 13:05

以直接创建内部类对象 Inner i=new Inner(); 为什么非得 HelloWorld hello=new HelloWorld(); Inner i =hello.new.Inner(); 不明白!

写回答 关注

3回答

  • 正儿八经王先森
    2018-03-29 14:21:24
    已采纳

    这应该是创建内部类对象和静态内部类对象的区别;静态内部类对象可以直接创建;

    qq_精神爽...

    非常感谢!

    2018-03-29 14:25:03

    共 1 条回复 >

  • 慕粉4333732
    2018-10-03 11:31:13

    因为main方法是static类,所以可以直接使用对象调用

  • qq_一向很靠谱_0
    2018-03-29 14:39:45

    new一个对象时,其实是调用它的构造方法;

    new Inner()实际上是调用其构造方法创建对象,调用方法时我们得用这个类的对象去调用,所以要创建一个外部类对象去调用这个方法;

    而static修饰的是类的对象,在类加载时就完成了创建,所以可以直接使用


    qq_精神爽...

    非常感谢!

    2018-03-29 14:50:14

    共 1 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530642 学习 · 6091 问题

查看课程

相似问题