编程思想-初始化与清理
来源:互联网 发布:大数据在行业应用 编辑:程序博客网 时间:2024/06/05 03:19
1.方法重载:方法名相同,参数列表不同(参数的顺序的不同也可以区分两个方法,不过不建议)
注:不以返回值区分重载方法
2. 构造方法:创建类时,如果没有定义构造函数,系统会默认创建一个不带形参的构造器。如果有定义构造函数,
系统就不会创建默认构造函数(一般建议自己亲手创建不带形参的构造器)。
3.在构造器中调用构造器:可以使用this调用一个构造器,当不能调用两个,此外,必须将构造器调用至于最起始处,否则编译器会报错
4.垃圾回收器如何工作:
1.引用计数。给每个对象都含有一个引用计数器,当引用连接到对象时,引用计数加1.当引用离开作用域时
或者被置为null时,引用计数减1.
缺陷:如果对象之间存在循环引用,会出现“引用计数不为零”。
2.停止-复制:先暂停程序的运行(所以不属于后台回收模式)。然后将所有存活的对象从当前堆复制到另 堆中(新堆保持紧凑)
3.标志-清扫:从堆栈和静态存储区中,遍历所有的引用,当它找到一个存活对象,就会给对象设置一个标志,当全部标志完成后,清理没有标志的对象,所以剩下的堆空间是不连续地。
5.对象的创建过程,假设有一个Dog类:
1.即使没有显示地使用static关键字,构造器实际上也是静态方法。因此,当首次创建类型为Dog对象时,或者Dog类的静态方法、静态域首次访问时,java解释器必须查找类路径,定位Dog.class
2.加载Dog.class,将静态初始化的所有动作都执行。静态初始化,只在Class对象第一次创建时进行一次。
3.当 new Dog()创建对象是,首先在堆上给对象分配足够的存储空间。并给所有数据成员初始化
4.执行构造器
6.数组的初始化
在java中,给一个数组赋值给另一个数组,如
int a [] = {1,2,3};
int[] a1 ;
a1 =a ;
其实a1和a是相同数组的别名,通过改变a1在a中可以看到变化。
- 编程思想-初始化与清理
- 初始化与清理【java编程思想杂记】
- <Java编程思想> 初始化与清理
- 《JAVA编程思想》笔记-初始化与清理
- 【Java编程思想】(1)初始化与清理
- Java编程思想之清理与初始化
- Java编程思想之初始化与清理
- 5初始化与清理-Java编程思想
- java 编程思想--初始化与清理
- Java编程思想-05初始化与清理
- Java编程思想初始化与清理
- JAVA编程思想笔记--初始化与清理
- Java编程思想之初始化与清理
- java编程思想 第五章初始化与清理
- 重读《Java编程思想》之四:初始化与清理
- Java编程思想第5章:初始化与清理
- JAVA编程思想读书笔记5:初始化与清理
- 《java编程思想系列之2》 初始化与清理
- CSS3渐变色按钮
- 第四周 课后实践:项目四——指向学生类的指针
- VC的文件路径为什么要用双斜杠
- 第四周 项目3-用对象数组操作长方体类
- SpringMVC深度探险(四) —— SpringMVC核心配置文件详解
- 编程思想-初始化与清理
- 第四周项目:三角形类的构造函数-(4)使用参数初始化表
- 项目1-三角形类的构造函数-(2)
- 一个mysql错误
- C#借助API实现黑盒自动化测试工具的编写
- 第四周 项目二--分数类的雏形
- House Robber
- 第四周项目1三角形类的构造函数(4)
- 【opencv学习笔记4】视频流的帧图像变换