阅读一些开源代码与框架,基础知识如果不扎实,阅读理解起来,总感觉雾里看花,这篇博客是自己终将付出的代价,
1、java是传值还是传引用?
比如你看nio源码,发现一些常规的用法就是每次使用selectionKey,后面总会remove掉,如果不remove掉,selector中的selectionKeys(),注册的key将会无线膨胀,将会导致内存溢出。
public class TellMe { public static void main(String[] args) { Selector st = new Selector(); st.addElement("中国"); Set<String> citys = st.elements(); //循环移除掉 Iterator<String> iterator = citys.iterator(); while(iterator.hasNext()){ iterator.next(); iterator.remove(); } System.out.println("selector 里面 还有元素吗?"+ citys.size()); } } class Selector{ private Set<String> keyset = new HashSet<String>(); public void addElement(String e){ keyset.add(e); } public Set<String> elements(){ return keyset; } }
public class Dev2Test { public static void main(String[] args) { List<Obj> objs = new ArrayList<Obj>(); Obj Obj = new Obj(); Obj.setAge(10); objs.add(Obj); Obj.setAge(20); Obj = null; System.out.println(Obj +" /\\ "+objs.get(0).getAge()+" /\\ "+objs.get(0)); System.out.println(); } } class Obj{ private int age; public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
Obj = null;只是让Obj对象的Obj的引用去掉彼此间的引用关系,
实际objs中还保留了一个引用,所以还是 不会被gc掉的。
这篇文章讲得比较通俗易懂,java对象与引用http://www.thinkingbar.com/2013/08/java%E5%AF%B9%E8%B1%A1%E5%8F%8A%E5%85%B6%E5%BC%95%E7%94%A8/
相关推荐
该PPT详细的讲述了Java中文件与数据流的相关内容,内容精干又全面
安全基础夯实主题年活动实施方案.docx
阶段一:从AI全面认知到基础夯实-行业认知&Python&必备数学 阶段二:从AI核心技术理论体系构建到项目实战: 机器学习&深度学习 阶段三:构建AI的数据驱动力--数据预处理工程 阶段四:AI 深度学习框架实战- Pytorch从...
2020一级建造师《机电实务》基础夯实考点(16-20).pdf
web基础夯实,基石:http协议,深刻理解http协议是非常必要的,另外还有 web域对象的理解
根据提供的文件信息,可以看出这份资料主要涉及的是2020年二级建造师考试中的“机电”部分的基础知识讲义。虽然“部分内容”中只出现了“大立教育”的重复字样,并未给出具体的知识点内容,但我们可以基于标题和描述...
这篇资料主要涉及高中物理中关于弹性势能的知识点,主要围绕弹簧的弹性势能变化、弹性势能的影响因素以及相关能量转化的分析进行讲解。 首先,我们要理解弹性势能是由于物体发生弹性形变而存储的能量。...
夯实法治基础优秀教案.pdf
在《管理规划夯实终身发展的基础》这个主题中,我们可以看到几个重要的知识点: 1. **实践的重要性**:寓言故事中的狐狸只说不做,最终失去了收获。这提示我们,光有远大的理想而不付诸实践是徒劳的。职业生涯规划...
MySQL教程秋季版之夯实基础,这是一份专为学习者设计的全面且深入的数据库管理教程,旨在帮助初学者及有经验的IT从业者巩固和提升MySQL的基础知识。MySQL是一种广泛使用的开源关系型数据库管理系统(RDBMS),在...
深度学习的数学基础是构建机器学习模型不可或缺的部分,特别是对于理解和实现复杂的神经网络至关重要。本课程旨在为初学者提供一个简单易懂的入口,无需深厚的数学背景也能掌握这些概念。 首先,课程涵盖微积分的...
课程共分为基础夯实、专业提升、课程设计、扩展阅读及国际交流等若干环节。 (1)基础夯实 课程简介,专业术语及基础理论的教学。此阶段起承上启下的作用,对本科教学内容进行简单回顾并引出本学科的教学内容及教学...
重启可信革命,夯实网络安全等级保护基础-沈昌祥,可信计算
### Gartner 2019:为数字化业务夯实基础 #### 一、引言 随着数字化转型成为全球各大企业的核心战略之一,首席信息官(CIO)的角色变得尤为重要。Gartner发布的《2019年首席信息官工作议程:为数字化业务夯实基础...
使用正铲挖掘机开挖,人工清理槽底,留200mm厚砂土,再进行基础夯实。 2. 安装与回填:化粪池吊装到位后进行校正平衡,开孔接管,然后分层回填中砂,期间需灌水检查有无渗漏。接着砌检查井,最后进行顶部回填层的...
基础夯实: 在深入学习之前,请确保自己具备Python编程的基本知识和技能。 理论与实践结合: 理论学习之后,通过实践加以巩固。 通过本资源的学习,你将能够掌握Python中的数据结构和算法知识,提升解决问题的能力...
本书以ATMEL 公司新一代AVR 系列单片机为主,...全书基础夯实,面向应用,理论与实践紧密结合,非常适合各高等院校和高职院校计算机、自动化等相关专业的学生作教材,也可供从事相关领域的科研人员和工程技术人员参考。
基础夯实特别重要,尤其是松软土层,可能需要铺设灰土层加固。浇筑基础时,可选用块石或混凝土,确保基础坚固。 总的来说,园林给排水工程中的驳岸设计和施工是技术与艺术的结合,需要综合考虑多种因素,确保结构...
- 施工顺序包括原土夯实、垫层定位放线、铺筑基础和基础夯实,确保基础的稳定。 - 材料需具备出厂合格证,严格控制配合比,并标识清楚。 - 土方开挖后,由甲乙双方共同验收合格后,才能进行管基施工,保证工程...
首先,基础夯实阶段主要任务是政策制定和基础建设。政府将明确任务职责分工,推动企业进行数字化改造,包括企业内网络改造和企业外网络升级,同时促进标识解析系统的建设。这一阶段的目标是培育工业互联网平台,鼓励...