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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 dark_horse_xu 于 2014-10-2 00:30 编辑

class OuterClass{
        private int num = 7;//定义一个私有的成员变量。
        void show(){
                System.out.println("Outershow");
       }
        class InnerClass{
                //定义一个函数
                void function(){
                        System.out.println(++num);//内部类访问外部成员变量。
                }
我想在这里调用一下外部函数show();怎么写代码啊?
        }
        //定义一个函数。
        void method(){
                InnerClass in = new InnerClass();//在外部类函数中创建内部类对象
                in.function();//调用内部类函数。
                in.show();//
        }
}
public class Test6{
        //主函数,程序的入口。
        public static void main(String[] args){
                OuterClass out = new OuterClass();//创建一个外部类对象
                out.method();//调用外部类方法
        }
}
这个程序满足调用外部函数吗?PS:我想输出结果为Outershow和8.调用外部函数来实现。
        



评分

参与人数 1技术分 +1 收起 理由
敏敏好学 + 1 赞一个!

查看全部评分

7 个回复

倒序浏览
本帖最后由 杨佳名 于 2014-9-27 01:39 编辑

class OuterClass{
        private int num = 7
        void show(){
                System.out.println("Outershow");
       }
        class InnerClass{
              
                void function(){
                        System.out.println(num++);//先打印后自加。
                }

        }
      
        void method(){
                InnerClass in = new InnerClass();
                in.function();
                show();//直接调用即可
        }
}
public class Test6{
        
        public static void main(String[] args){
                OuterClass out = new OuterClass();
                out.method();
        }
}
回复 使用道具 举报
杨佳名 发表于 2014-9-27 01:01
class OuterClass{
        private int num = 7;//定义一个私有的成员变量。        !!内部类调用必须f ...

内部类定义在局部变量时,次必须用final修饰,我是定义在成员变量位置不需要final吧。。
回复 使用道具 举报
杨佳名 发表于 2014-9-27 01:01
class OuterClass{
        private int num = 7;//定义一个私有的成员变量。        !!内部类调用必须f ...

是可以直接调用,但是不是内部类调用的啊,这是外部类的method()直接调用的show();
回复 使用道具 举报
本帖最后由 dark_horse_xu 于 2014-9-27 01:17 编辑

class OuterClass{
        private int num = 7;//定义一个私有的成员变量。
        void show(){
                System.out.println("Outershow");
       }
        class InnerClass{
                //定义一个函数
                void function(){
                        System.out.println(++num);//内部类访问外部成员变量。                       show();//直接调用了。
                }我想在这里调用一下外部函数show();怎么写代码啊?
        }
        //定义一个函数。
        void method(){
                InnerClass in = new InnerClass();//在外部类函数中创建内部类对象
                in.function();//调用内部类函数。
        }
}
public class Test6{
        //主函数,程序的入口。
        public static void main(String[] args){
                OuterClass out = new OuterClass();//创建一个外部类对象
                out.method();//调用外部类方法
        }
}

回复 使用道具 举报
dark_horse_xu 发表于 2014-9-27 01:07
内部类定义在局部变量时,次必须用final修饰,我是定义在成员变量位置不需要final吧。。 ...

:L想错了,打印哦8就++num
回复 使用道具 举报
外部的show方法 创建外部的对象调用。没什么纠结的啊
回复 使用道具 举报
杨佳名 发表于 2014-9-27 01:38
外部的show方法 创建外部的对象调用。没什么纠结的啊

我直接用show();就能调用了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马