我的漫漫程序之旅

专注于JavaWeb开发
随笔 - 39, 文章 - 310, 评论 - 411, 引用 - 0
数据加载中……

2007最后一套JAVA面试题(内部类)

内部类的实现方式:
package com.test;

public class
 OuterClass
{
    
static int
 a ;
    
int
 b ;
    
private class
 InnerClass
    
{
        
public
 InnerClass()
        
{
            System.out.println(
"InnerClass create:" +
 a);
        }

    }

    
    
public OuterClass()
    
{
        InnerClass ic 
= new
 InnerClass();
        System.out.println(
"OuterClass create"
);
    }

    
    
public static void main(String[] args)
    
{
        OuterClass oc 
= new
 OuterClass();
    }

}

总结:

一.静态内部类可以有静态成员,而非静态内部类则不能有静态成员。

二.静态内部类的非静态成员可以访问外部类的静态变量,而不可访问外部类的非静态变量;

三.非静态内部类的非静态成员可以访问外部类的非静态变量


posted on 2007-12-28 10:52 々上善若水々 阅读(1725) 评论(1)  编辑  收藏 所属分类: Java笔试与面试

评论

# re: 2007最后一套JAVA面试题(内部类)  回复  更多评论   

不知道我总结的对不对:
静态的内部类 只能访问 外部类的静态成员,
非静态内部类 可以访问 外部类的任意成员
2013-05-30 13:16 | sjr

只有注册用户登录后才能发表评论。


网站导航: