本帖最后由 renshu16 于 2014-5-3 10:48 编辑
class OutClass{ //定义外部类,包含私有成员变量和函数
private int a = 2048;
private void funcOut(){
System.out.println("out function run print:" + a);
}
public class InnerClass{ //定义内部类
public void funcInner(){
System.out.println("inner function run");
System.out.println("a=" + a); //内部类访问外部内的成员变量和函数()
funcOut();
}
}
public static void main(String[] args){
OutClass o = new OutClass();
//o.a = 0; //问题1: 这俩句话报错,为什么?
//o.funcOut();// 这不是OurClass类的对象o调用成员吗?
OutClass.InnerClass in = o.new InnerClass();
in.funcInner();
//InnerClass.funcInner(); //问题2、 为什么不能直接调用内部函数?
}
} //问题3、 本题需求:在外部类函数中创建内部类对象,调用内部类函数。 如何实现?
/*
* 5、 定义一个包含私有成员变量和函数的类,再定义一个内部类,在内部类函数中访问外部
* 成员变量,并调用外部函数。在外部类函数中创建内部类对象,调用内部类函数。
* */
麻烦大神帮忙分析一下这段代码?
有三个问题:
//问题1:创建OurClass类的对象o,o.成员为什么报错?
//问题2: 为什么main函数中不能直接调用内部类的函数?
//问题3: 本题需求:在外部类函数中创建内部类对象,调用内部类函数。 如何实现?
|
|