(面试题)内部类(2019年10月25日)

1.Anonymous Inner Class(匿名内部类)是否可以继承其它类?是否可以实现接口?

可以继承其他类或实现其他接口,在Swing编程和Android开发中常用此方式来实现事件监听和回调

2.为什么内部类调用的外部变量必须是final修饰的?

  因为生命周期的原因。方法中的局部变量,方法结束后这个变量就要释放掉,final保证这个变量始终指向一个对象。首先,内部类和外部类其实是处于同一个级别,内部类不会因为定义在方法中就会随着方法的执行完毕而跟随者被销毁。问题就来了,如果外部类的方法中的变量不定义final,那么当外部类方法执行完毕的时候,这个局部变量肯定也就被GC了,然而内部类的某个方法还没有执行完,这个时候他所引用的外部变量已经找不到了。如果定义为final,java会将这个变量复制一份作为成员变量内置于内部类中,这样的话,由于final所修饰的值始终无法改变,所以这个变量所指向的内存区域就不会变。 
为了解决:局部变量的生命周期与局部内部类的对象的生命周期的不一致性问题

原文地址:https://www.cnblogs.com/Starlets/p/11739234.html

时间: 2024-11-05 17:32:18

(面试题)内部类(2019年10月25日)的相关文章

内部类(2019年10月25日)

java文件里面必须有且只有一个public的class,并且名字跟文件名一样, 如果一个文件有很多类,而且每个类前面都没写public ,那么会在和类名相同的类前默认加上一个public 1 Outer o= new Outer(); 2 Inner i= o.new Inner(); 3 i.method(); //等同于 Inner i= new Outer().new Inner(); 内部类分为:成员内部类,静态内部类,临时内部类,匿名内部类 成员内部类:地位就相当于类中的属性,在编译

2019年 10月 25日 杨爱桁 专业英语课后总结

第一层:物理层 第二层:链路层    以太网协议     mac地址 第三层:网络层:ip数据包    ip协议     ip地址分成两部分 ARP协议     子网掩码 第四层:端口    tcp协议   udp协议 原文地址:https://www.cnblogs.com/yangaiheng/p/11739783.html

题目:《项目集管理标准(第三版)》发布会10月25日在京成功举办

作者:共创国际-项目管理者联盟   正文:   共创国际项目管理者联盟于2014年10月25日在电子工业出版社(华信大厦)举办了<项目集管理标准(第三版)>发布会.<项目集管理标准(第三版)>(中文版)由项目管理者联盟项目集管理研究中心翻译与审校,并由电子工业出版社出版.本次发布会的举办是项目集管理研究中心推广项目集管理三年多来的重要里程碑事件. 在来自PMI(中国).国家外国专家局培训中心.共创国际项目管理者联盟.电子工业出版社的多位领导与嘉宾的见证下,<项目集管理标准(第

郎咸平 马行空 - 郎咸平说:萧条下的希望(2014年10月25日)

<郎咸平说:萧条下的希望> 作 者:郎咸平 马行空译 者:系 列:出 版:东方出版社字 数:200千字阅读完成:2014年10月25日

等Excel工作簿关闭后自动加密压缩备份2019年10月9日.ahk

;; 等Excel工作簿关闭后自动加密压缩备份2019年10月9日.ahk;; 腾讯QQ号 595076941; 作者:徐晓亮(weiyunwps618); 写作日期:2019年5月15日; 版本号:第1版; 手机号(中国移动) 138#####488;; 用法:;; 1.在Windows 7 专业版中安装WinRAR 5.7 简体中文版和WPS Office 2016 专业增强版.; 2.在此脚本所在的文件夹新建一个与此脚本同名的Excel工作簿文件(*.xlsx).; 3.运行此脚本.; 4

【Lazy资产管理系统v1.0】2019年10月19日发布测试版

Lazy资产管理系统,是一款简洁而高效的资产管理系统,包括[资产明细查询].[资产新增管理].[资产变动管理].[资产借用管理].[资产处置管理].[我的资产变动记录].[我的资产借用记录]等功能. 为了解决广大企业管理者资产管理的难题,作者将此项目免费发布出来,供大家使用与交流,欢迎大家加入Lazy资产管理系统QQ交流群:×××,作者愿意和一起做好做强这款简洁而高效的资产管理系统. Lazy资产管理系统,将于2019年10月19日发布测试版本,欢迎大家下载测试,以便我们提供更好的免费版本给大家

传智播客 刘意_2015年Java基础视频-深入浅出精华版 笔记(2015年10月25日23:28:50)

本笔记是个人笔记+摘录笔记相结合,非完全原创 day01 win 7系统打开DOS有趣方法:按住shift+右键,单击“在此处打开命令窗口”(注意:在此处可以是任何的文件夹,不一定是桌面) 用DOS删除的文件不可以在回收站恢复?!! 常用DOS命令d: 回车 盘符切换dir(directory):列出当前目录下的文件以及文件夹md (make directory) : 创建目录(创建文件夹)rd (remove directory): 删除目录(删除文件夹,注意:前提是文件夹必须是空的!!)如果

(面试题)ArrayList,HashSet以及HashMap(2019年10月23日)

1.看如下代码会输出什么 Integer i1 = 120 ; Integer i2 = 120 ; Integer i3 = new Integer(120); Integer i4 = new Integer(120); 答: Integer 在类加载的时候会先在静态区中初始化好-128 127 之间的数值,如果在这个范围则直接重复使用,否则在堆中new一个Integer 120:true 由于10在范围内,所以使用共用静态区中的Integer 1000:false 由于1000在范围外,所

2019年5月25日-linux就该这么学-第10课

第8章 iptables 与firewalld防火墙 8.0 四种设置网卡的方式(1) 命令行模式:vim /etc/sysconfig/network-scripts/ifcfg-eno网卡号:(2) 图形化界面:nmtui:(3) 图形化界面:nm-connection-editor:(4) 图形化界面:虚拟机界面右上角网络配置:配置好后,注意:(1) onboot=yes一定要启用:(2) 要重启网络才启效:systemctl restart network. 8.1 防火墙管理工具:防火