一个外部类是否可以有多个内部类,同级内部类之间可以互相调用吗?内部类中还可以定义一个内部类吗?相对内部类可以调用相对外部类的数据,可以调用相对外部类中的外部类吗?java代码的格式优势又是怎样的?

来源:7-5 什么是 Java 中的内部类

qq_由梦而生_0

2015-11-17 12:41

public class HelloWorld{

    public class Inner{//构建相对外部类

public class INNER{}//构建相对内部类

   }

public class Inner2{

}//同级内部类

}

写回答 关注

2回答

  • Goldberg
    2016-02-16 18:21:21

    第一 二 三个问题答案是可以的。有问题自己动手调试一下,几分钟的事。

    hellowworld类代码如下

    public class HelloWorld {
     int a =18;
     public class Inner{//构建相对外部类
      public int b =19;
      public class INNER{
       HelloWorld NewA =new HelloWorld();
       public void fun0(){
        NewA.a=11;
        System.out.println(NewA.a+"相对内部类调用最外层类成功");
       }
      }
     }
     public class Inner2{
      Inner newB = new Inner();
      public void fun(){
       newB.b=12;
       System.out.println(newB.b+"同级类调用成功");
      }
     }
    }

    存放主函数的类代码如下:

    package test;
    import test.HelloWorld.Inner;
    import test.HelloWorld.Inner.INNER;
    import test.HelloWorld.Inner2;
    public class test1 {
      public static void main(String[] args) {
      // TODO 自动生成的方法存根
      HelloWorld a1 =new HelloWorld();
      Inner a2 =a1.new Inner();
      INNER a3 =a2.new INNER();
      a3.fun0();
      Inner2 a2_2 =a1.new Inner2();
      a2_2.fun();
     }
    }

    第四个问题:java代码的格式优势又是怎样的?
    答:没看懂,不知道....

    希望能帮到你  

    一起努力学习吧!


  • 3000sama
    2015-12-15 11:04:05

    猜测

    既然外部无法直接调用内部,同级别的内部也只能间接调用;

    理论上可以无限定义内部类    但是有必要么?

    内部类比它自身的外部类拥有更高的权限,那么也能访问外部类的外部类并无视权限。

    才学java,不懂什么是格式优势

Java入门第二季 升级版

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

531138 学习 · 6326 问题

查看课程

相似问题