A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© Geek_001 中级黑马   /  2014-6-22 15:02  /  2161 人查看  /  30 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 Geek_001 于 2014-6-23 10:07 编辑

如何解决下面的死循环问题?

获.PNG (149.27 KB, 下载次数: 29)

获.PNG

30 个回复

正序浏览
郑飞 发表于 2014-6-23 13:52
那能不能把inner()里面的show()去掉,我没看明白这个show()做什么用的啊.

好吧,我再看看内部类视频去.. ...

正好帮你复习一下内部类,不用谢了,哇喔!:P
回复 使用道具 举报
本帖最后由 郑飞 于 2014-6-23 13:55 编辑
Geek_001 发表于 2014-6-23 13:36
要求是外部类得访问内部类函数啊!


那能不能把inner()里面的show()去掉,我没看明白这个show()做什么用的啊.

好吧,我再看看内部类视频去..;P
回复 使用道具 举报
郑飞 发表于 2014-6-23 13:34
亲,你这是inner()调show(),show()调inner(),

你把要做得业务放在show()里面可以,但是别再调inner()了. ...

要求是外部类得访问内部类函数啊!
回复 使用道具 举报
亲,你这是inner()调show(),show()调inner(),

你把要做得业务放在show()里面可以,但是别再调inner()了.
回复 使用道具 举报
波涛 发表于 2014-6-23 11:16
你在Main类中写的 new Outer().new Inner().inner(); 这不也是外部类调用内部类方法么! ...

亲,那在外部其它类中调用内部类方法。
回复 使用道具 举报
Geek_001 发表于 2014-6-23 10:07
System.out.println("This is show method!");
          //new Inner().inner();
你都把访问 ...

你在Main类中写的 new Outer().new Inner().inner(); 这不也是外部类调用内部类方法么!
回复 使用道具 举报
波涛 发表于 2014-6-22 23:29
这个不会出现死循环!改了17、18行

           System.out.println("This is show method!");
          //new Inner().inner();
你都把访问内部类的方法都注释了,还怎么访问内部类函数?
回复 使用道具 举报
陈云阳 发表于 2014-6-23 00:52
[code] class Main
{
    public static void main(String[]args)

运行流畅......谢了哥们
回复 使用道具 举报
陈云阳 发表于 2014-6-23 08:38
你这是函数是void,要有返回值不就错了,只为用来退出循环的

我明白了,我运行一下你滴代码....
回复 使用道具 举报
姿_`态 发表于 2014-6-23 08:18
我看错啦,不好意思啊

木关系啦!
回复 使用道具 举报
Geek_001 发表于 2014-6-23 01:19
改了后,外部类如何访问内部类函数?

第六行不就是外部类调用内部类方法么!
回复 使用道具 举报
Geek_001 发表于 2014-6-23 01:16
while((x--)!=0)
                {
                     return;

你这是函数是void,要有返回值不就错了,只为用来退出循环的
回复 使用道具 举报
Geek_001 发表于 2014-6-23 01:17
你从哪看出来是抽象的啊!我没设置啊!

我看错啦,不好意思啊
回复 使用道具 举报
陈云阳 发表于 2014-6-23 00:52
[code] class Main
{
    public static void main(String[]args)

有时间请详解一下,递减的那段代码.
回复 使用道具 举报
波涛 发表于 2014-6-22 23:29
这个不会出现死循环!改了17、18行

改了后,外部类如何访问内部类函数?
回复 使用道具 举报
姿_`态 发表于 2014-6-22 15:20
你这是死循环? 里面的show()是抽象的吧

你从哪看出来是抽象的啊!我没设置啊!
回复 使用道具 举报
陈云阳 发表于 2014-6-23 00:52
[code] class Main
{
    public static void main(String[]args)

while((x--)!=0)
                {
                     return;
                }
什么都不返回吗?
回复 使用道具 举报
[code] class Main
{
    public static void main(String[]args)
        {
                //外部类调用内部类
           new Outer().new Inner().inner(5);
        }

}
class Outer
{
        ////建立外部类成员变量私有,并赋值
        private String name = "I love you";
        //建立外部类函数
        void show(int x)
        {
                        while((x--)!=0)
                        {
                                return;
                        }
           System.out.println("This is show method!");
          new Inner().inner(x);
        }
        //建立内部类
        class Inner
        {
                void inner(int i)
                {
                        //内部类调用外部类成员
                   System.out.println("outer:"+name);
                        //调用外部类方法
                   show(i);
                }
        }
}
函数要传参,设定条件  递减,循环到一定次数就退出循环了
回复 使用道具 举报
Geek_001 发表于 2014-6-22 23:19
亲,你好像只是复制了额的代码?

这个不会出现死循环!改了17、18行
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马