java中的静态内部类

静态内部类static修饰的内部类

静态内部类的特点:

  1.静态内部类不能直接访问外部类的非静态成员,但是可以通过new 外部类().成员的方式访问;

  2.如果外部类中的静态成员和静态内部类中的成员名称相同,可以通过类名.静态成员访问外部类的静态成员,

   如果外部类中的静态成员和静态内部类中的成员名称不同,则可直接通过静态成员名称访问外部类的静态成员;

  3.创建静态内部类的对象时不需要外部类的对象,直接用 静态内部类 对象名= new 静态内部类();

技术分享
 1 package com.imooc.test003;
 2 
 3 public class Outer {
 4 
 5     private int a = 10;//外部类的普通成员变量
 6     private static int b = 20;//外部类的静态成员变量
 7     private static int c = 30;//外部类的静态成员变量
 8     
 9     //内部类Inner
10     public static class Inner{
11         
12         private int b = 40;
13         
14         public void test(){
15             System.out.println("访问外部类中的普通成员变量a:" + new Outer().a);
16             System.out.println("访问外部类中与内部类中成员变量同名的静态成员变量b:" + Outer.b);
17             System.out.println("访问内部类中的普通成员变量b:" + b);
18             System.out.println("访问外部类中与内部类中成员变量不同名的静态成员变量c:" + c);
19         }
20         
21     }
22     
23     public static void main(String[] args){
24         Inner in = new Inner();//创建内部类的对象
25         in.test();
26     }
27     
28 }
View Code

   参考:慕课网(http://www.imooc.com/)

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。