码迷,mamicode.com
首页 > 编程语言 > 详细

java中几个特殊的类---内部类

时间:2015-09-26 12:00:40      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:

内部类-----是在其他类中的类

1、内部类的定义

  • 将类定义为 class xxxx{... ...}置于某个类的内部即可‘
  • 内部类编译时生成 xxxx$xxxx的class文件
  • 内部类不能够与外部类同名

2、内部类的使用

  • 在封装其类本省的类中使用该类,与普通类的使用方式相同
  • 在其他地方使用该类:a 类名前要冠以外部类的类名; b 在用new创建内部类对象时,外部类名.内部类名 内部类对象名=外部类对象名.new 内部类名(参数)

3、在内部类中使用外部类的成员

  • 内部类可以直接使用外部类的所有字段和方法;private也可以
  • 如果内部类与外部类有同名的字段方法,则:外部类名.this.字段或方法

代码示例:

技术分享
public class TestInnerClass {
    public static void main(String[] args){
        ExternalClass  extern = new ExternalClass();
        ExternalClass.InnerClass inner = extern.new InnerClass();
        inner.outPut("方法的字段");
    }
}

class ExternalClass{
    private String s = "外部类字段";
    
    class InnerClass{
        private String s = "内部类字段";
        public void outPut(String s){
            System.out.println("s的值为 " + s);
            System.out.println("this.s的值为 " + this.s);
            System.out.println("ExternalClass.s的值为 " + ExternalClass.this.s);
        }
    }
    
}
View Code

输出结果:

技术分享
s的值为 方法的字段
this.s的值为 内部类字段
ExternalClass.s的值为 外部类字段
View Code

 

java中几个特殊的类---内部类

标签:

原文地址:http://www.cnblogs.com/penghuster/p/4840482.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!