1.成员变量和局部变量的区别
A.在类中的位置不同
- 成员变量:在类中方法外
- 局部变量:在方法定义中或方法声明上
B.在内存中的位置不同
- 成员变量:在堆内存(成员变量属于对象,对象进堆内存)
- 局部变量:在栈内存(局部变量属于方法,方法进栈内存)
C.生命周期不同
- 成员变量:随着对象的创建而存在,随着对象的消失而消失
- 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
D.初始化值不同
- 成员变量:没有默认初始化值
- 局部变量:没有默认初始化值,必须定义赋值赋值才能使用
注意事项
- 局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用就近原则
- 基本数据类型包括:byte short int long float double boolean char
- 引用数据类型变量包括:数组 类 接口 枚举
2.匿名对象的概述和应用
A.什么是匿名对象
- 没有名字的对象
B.匿名对象的应用场景
- 仅仅只调用一次的时候,可以节省代码
- 调用多次时不合适
- 匿名对象可以作为实际参数传递