package inner_class; public class Innerclass { private int value=3; public void method1() { System.out.println("外部类"+value); System.out.println("number:"+new Aa().number); //外部类访问内部类时必须先建立内部类的对象,通过对象访问 } class Aa { private int number=23; private int value=12; public void function() //而内部类可直接访问外部的成员变量及成员函数 { int value=30; System.out.println("内部类"+number); System.out.println("value:"+value); System.out.println("this.value:"+this.value); System.out.println("Innerclass.this.value:"+Innerclass.this.value); } } static class Bb //静态内部类 { public void mm() { System.out.println("非静态方法mm"); } static void nn() { System.out.println("静态方法nn"); } } public static void fund() { System.out.println("通过外部类中的静态方法fund调用静态内部类的非静态成员mm:"); new Bb().mm(); } }
//以下是对内部类进行测试 package inner_class; public class Inner_test { public static void main(String[] args) { Innerclass inclass=new Innerclass(); inclass.method1(); Innerclass.Aa inaa=new Innerclass().new Aa(); //调用内部类的格式 inaa.function(); new Innerclass.Bb().mm(); //调用静态内部类的非静态成员方法 Innerclass.Bb.nn(); //调用静态内部类的静态成员 Innerclass.fund(); } }
java中内部类实例练习
最新推荐文章于 2022-05-10 00:57:52 发布