黑马程序员技术交流社区

标题: 帮我找出下面JAVA代码中存在的错误 [打印本页]

作者: 刘永贵    时间: 2013-6-14 17:57
标题: 帮我找出下面JAVA代码中存在的错误
  编写了一串代码,但不知哪出错了,求大家指教一下
        class Other {
             public int i ;
         }
        class Something  {
             public static void main(String[]  args)  {
                 Other o = new Other();
                  new Something().addOne(o);
          }

        public void addOne (final Other o)   {
             o.i++;
             o=new Other();
         }
}

作者: ′х.|鰉❤耔    时间: 2013-6-14 18:02
public static void main(String[] args) {
                Other o = new Other();
                new FanShe().addOne(o);
        }

        public void addOne(Other o) {
                o.i++;
                o = new Other();
        }
       
        static class Other {
                public int i;
        }
作者: ′х.|鰉❤耔    时间: 2013-6-14 18:03
因为你是在main方法中调用内部类那么内部类就一定要是静态的,还有你的传的参数是final无法修改的,然后你有new一个新的内部类,当然是不可以的了
作者: ′х.|鰉❤耔    时间: 2013-6-14 18:06
不过你也把你在main方法中实例的内部类提炼出来放到普通的方法中,因为你的内部类是基于外部类的,你连外部类度没有实例出来,有怎么可能让编译器给你实例内部类呢,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2