网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.让Java.net合作开发Borland推跨平.
.struts构建文件上传(八).
.加密网页破解大法.
.EJB核心技术及其应用(2).
.Nutch在Windows中安装之细解.
.实现高效Java编程规范的十一条基.
.java的关键知识点.
.Java虚拟机结构基础研究之一.
.Java对象持久化技术之Hibernate入.
.Google将加入Eclipse?.
.OJB简介--翻至ojb docs.
.Java 的选择语句.
.将Java的class文件转为EXE的八种.
.Tomcat 中通过 JNDI 配置访问数据.
.java学习:VisualAge使用技巧二.
.Java初学者都必须理解的六大问题.
.将form保存到图片中.
.Beans入门必读之无状态会话bean基.
.用Jboss数据源将应用程序连接到数.
.Java语言深入:对java.lang的研究.

介绍嵌套类和内部类

发表日期:2008-1-5


在另一个类中定义的类就是嵌套类(nested classes)。嵌套类的范围由装入它的类的范围限制。这样,假如类B被定义在类A之内,那么B为A所知,然而不被A的外面所知。嵌套类可以访问嵌套它的类的成员,包括private 成员。但是,包围类不能访问嵌套类的成员。

嵌套类一般有2种类型:前面加static标识符的和不加static 标识符的。一个static的嵌套类有static修饰符。因为它是static,所以只能通过对象来访问它包围类的成员。也就是说,它不能直接引用它包围类的成员。因为有这个限制,所以static嵌套类很少使用。

嵌套类最重要的类型是内部类(inner class)。内部类是非static的嵌套类。它可以访问它的外部类的所有变量和方法,它可以直接引用它们,就像外部类中的其他非static成员的功能一样。这样,一个内部类完全在它的包围类的范围之内。

下面的程序示例了如何定义和使用一个内部类。名为Outer 的类有一个名为outer_x 的示例变量,一个名为test()的实例方法,并且定义了一个名为Inner 的内部类。

// Demonstrate an inner class.
class Outer {
int outer_x = 100;

void test() {
Inner inner = new Inner();
inner.display();

}

// this is an inner class class Inner { void display() {System.out.println("display: outer_x = " + outer_x); }}}

class InnerClassDemo {

public static void main(String args[]) {
Outer outer = new Outer();
outer.test();

}
}

该程序的输出如下所示:

display: outer_x = 100

在本程序中,内部类Inner 定义在Outer 类的范围之内。因此,在Inner 类之内的任何代码可以直接访问变量outer_x 。实例方法display() 定义在Inner 的内部,该方法以标准的输出流显示 outer_x 。InnerClassDemo 的main( ) 方法创建类Outer 的一个实例并调用它的test( )方法。创建类Inner 和display() 方法的一个实例的方法被调用。


上一篇:介绍一些 Java NIO 的学习文章,以方便各位的学习! 人气:921
下一篇:介绍访问控制 人气:650
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐