内部类

拜读了《深入理解内部类和嵌套类》及《初识java内部类》两篇文章后,对内部类基本认识了:

一 含义

在一个类或方法内部定义的类就是内部类。匿名内部类是内部类的一种特殊用法

二 功用

内部类对其他类都是不可见的,这利于信息隐藏。内部类可以访问他的上一级的变量和方法,包括私有类型,这是非内部类不可行的。

内部类实现接口可以方便实现多继承

匿名内部类常用于事件处理

三 所谓嵌套类和内部类

《java语言导学》一书定义:静态的嵌套类就叫嵌套类,而非静态的静态类称为内部类

这样容易使人误解所谓嵌套类和内部类有不同的性质。他们的区别就在于static:(暂且用嵌套类和内部类这两个名词以示区别)内部类对象可以访问他说对应的外部类对象,有隐式的指向外部的引用。而嵌套类没有。因为静态成员不能直接引用非静态成员。

所以不用说的这么复杂,我倾向于就称“内部类”,使用中要注意到static修饰词的作用。

四 匿名内部类

语法规则:

new interfacename(){..................}

new superclassname(){..................}

它没有构造函数

如果想初识化它的成员变量

1.如果是在一个方法内部,可通过方法传递参数。这些参数必须声明为final,因为方法内的成员变量修饰符只有final

2.将匿名内部类改造成有名字的局部内部类

3.在匿名类内部使用初始化代码块

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值