定义一个包含私有成员变量和函数的类,再定义一个内部类,在内部类函数中访问外部成员变量,并调用外部函数。在外部类函数中创建内部类对象,调用内部类函数。求解?
publicclass包含私有成员变量和函数的类{privatestaticint私有成员变量=123;privatestaticvoid私有函数(){System.out.println("调用私有函数()");内部类内部类=new包含私有成员变量和函数的类().new内部类();System.out.println("创建内部类对象");内部类.内部类函数();return;}privatestaticvoid私有函数1(){System.out.println("私有函数1");return;}publicclass内部类{publicvoid内部类函数(){System.out.println("内部类函数访问外部成员变量");System.out.println("外部类私有成员变量的值:"+包含私有成员变量和函数的类.私有成员变量);System.out.println("内部类调用外部函数");包含私有成员变量和函数的类.私有函数1();}}publicstaticvoidmain(String[]args){私有函数();}}
举一反三
- 在一个类中,定义在类中的叫成员变量,定义在函数中的叫局部变量,那么根据类定义的位置也可以分为成员内部类和局部内部类。包含在外部类的函数中的内部类称之为局部内部类。
- 关于内部类,下面那些描述是正确的() A: 内部类不能与外部类同名。 B: 外部类访问内部类时,必须在内部类名前冠以其所属外部类的名字才能使用;在用new创建内部类时,也需在new前冠以对象变量。 C: 内部类对象中保存了一个外部类对象的引用,当在内部类的成员方法中访问某一变量时,如果该方法和内部类中都没有定义过这个变量,调用就会被传递给内部类中保存的那个对外部对象的引用,通过它去调用这个变量。 D: 外部类和内部类访问原则:在外部类中,通过ygie内部类的对象应用内部类中的成员;在内部类中可以直接引用它的外部类的成员。
- 【简答题】创建一个包含内部类的类,外部类中定义一个名为str的String字符串并初始化任意值,在内部类中定义,跟外部类同种类型且同名的变量,并在内部类中定义一个方法,分别打印外部类和内部类的变量
- 编写下面的程序并写出运行结果,体会内部类的形式//定义外部类OuterclassOuter19{intm=0;voidtest1(){System.out.println("外部类成员方法");}voidtest2(){//1、定义局部内部类Inner,在局部内部类中访问外部类变量和方法classInner{intn=1;voidshow(){System.out.println("外部类变量m="+m);test1();}}//2、在创建局部内部类的方法中,调用局部内部类变量和方法Innerinner=newInner();System.out.println("局部内部类变量n="+inner.n);inner.show();}}//定义测试类publicclassEx19OutInner{publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubOuter19outer=newOuter19();outer.test2();//通过外部类对象调用创建了局部内部类的方法}}
- 内部类的外部类的成员变量在内部类中仍然有效,内部类中的方法不可以调用外部类中的方法。( )
内容
- 0
下列对局部内部类的描述错误的选项是()。 A: 局部内部类定义在方法内部 B: 局部内部类的变量只在局部中起作用 C: 对定义的内部类进行访问必须在该内部类所在的方法中通过创建内部类对象进行访问 D: 局部内部类可以在其他方法中进行调用
- 1
成员内部类指的是将一个类定义在另一个类的内部
- 2
关于成员内部类,下列说法错误的是()。 A: 成员内部类可以拥有自己的成员变量与成员方法,并通过创建内部类的对象进行成员的访问。 B: 成员内部类不能含有static修饰的成员变量和方法。 C: 成员内部类的成员方法可以直接访问外部类所有的成员变量和成员方法,包括private成员。 D: 成员内部类不是一个独立的类。
- 3
函数内部不能直接使用定义在函数外部的变量。可以在函数内部使用关键字_______修饰定义在函数外部的变量,则该变量可以在函数内部被访问。
- 4
关于内部类,下面说法正确的是? A: 成员内部类是外部类的一个成员,可以访问外部类的其它成员 B: 静态内部类中可以定义静态成员,也可以定义非静态成员 C: 方法内部类只能在其定义的当前方法中进行实例化 D: 外部类可以访问成员内部类的成员