1.不管怎么样,不管有没有出现异常 finally 里面的代码都是会执行的。
2.当try catch 里面有 renturn 时, finally里面的代码还是要执行。
3. finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值保存起来,管finally中的代码怎么样,返回的值都不会改变,任然是之前保存的值),所以函数返回值是在finally执行前确定的;
4. 局部变量:从内存上看,他定义在栈中(局部变量跟函数一块进内存,函数定义在栈内存中)。 生命周期:随着函数进栈执行开始进入内存,函数出栈结算生命周期。
成员变量:从内存上看他定义在堆内存中。随着对象创建的时候进入堆内存,随着对象的空间被回收的时候,生命周期结束。
5. 引用类型; class ,interface ,array.string
6.构造函数的执行:
1.通过super 语句,调用父类构造函数。
2.给对象空间中的所有非静态成员变量显示赋值。
3.执行构造代码块。()
4.执行构造函数中的代码。
7,局部代码块:(限制变量的使用范围。)