java吧 关注:1,186,872贴子:12,590,921
  • 12回复贴,共1

关于成员内部类!

只看楼主收藏回复

上面提示:cannot be referenced from a static context
我能理解静态方法只能调用静态类或方法,但为什么它可以创建其他类,而不能创建自己的成员内部类?
成员内部类,和其他外部类,不都是一样《非静态》吗?



IP属地:陕西1楼2023-08-09 21:41回复
    在线等,南泵!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


    IP属地:陕西2楼2023-08-09 21:43
    回复
      在线等,南泵!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


      IP属地:陕西3楼2023-08-09 21:43
      回复
        不是,你这么写,肯定找不到a的。


        IP属地:北京来自Android客户端4楼2023-08-09 22:01
        收起回复
          new.zuoye().new a()


          IP属地:河北来自Android客户端5楼2023-08-09 22:41
          回复
            你这不是静态内部类的话,就要通过创建他自己的对象来创建成员内部类对象


            IP属地:北京来自Android客户端6楼2023-08-09 22:49
            回复
              内部类去掉public


              IP属地:广东来自Android客户端8楼2023-08-10 01:24
              回复
                你分的清楚,public class a,static class a和class a的区别么?


                IP属地:广东来自Android客户端9楼2023-08-10 09:49
                回复
                  1.你在zuoye类里面定义了公共类a,类a就是非静态的,然后你在静态方法里面new肯定是不行的呀,要么类a加个static,要么new zuoye().new a()
                  2.不带修饰符的类c,默认就是default,default类对同一包下的类都是可见的,所以可以访问,没啥问题啊


                  IP属地:广东来自Android客户端11楼2023-08-10 10:08
                  收起回复