[转]JAVA 在main中访问内部类、方法等

1.使用静态的属性、方法、内部类

 1 class A
 2 {
 3     static int i = 1;    //    A 类的静态属性
 4     static void outPut()    //    A 类的静态方法
 5     {
 6         System.out.println(i);
 7     }
 8     static class B        //    A 类的静态内部类
 9     {
10         void outPut()
11         {
12             System.out.println("B");
13         }
14     }
15     public static void main(String[] args)
16     {
17         
18         System.out.println(i);       //    调用静态的属性 
19         outPut();            //    调用静态的方法    
20         B b = new B();        //    调用静态的内部类
21         b.outPut();
22     }
23 } 

2.使用此类的对象名访问

 1 class A
 2 {
 3     int i = 1;    //    属性
 4     void outPut()    //    方法
 5     {
 6         System.out.println(i);
 7     }
 8     class B    //    内部类
 9     {
10         void outPut()
11         {
12             System.out.println("B");
13         }
14     }    
15     B newB()            //    (关键)在动态方法中建立 B 的对象
16     {
17         B b = new B();
18         return b;
19     }    
20     public static void main(String[] args)
21     {
22         A a = new A();
23         System.out.println(a.i);        //    调用属性
24         a.outPut();        //    调用方法        
25         B b = a.newB();        //    调用内部类
26         b.outPut();
27     }
28 }

 

在静态的main中,无法创建非静态的内部类。

 

posted @ 2017-06-23 01:56  头头头头头头大  阅读(229)  评论(0编辑  收藏  举报