1:局部变量和成员变量的区别?
成员变量和局部变量的区别:
1)在类中的位置不同
a:成员变量:在类中,方法外
b:局部变量:在方法声明上,或者是在方法定义中
2)在内存里面的位置不一样
a:成员变量:在堆内存
b:局部变量:在栈内存
3)生命周期不同
a:成员变量:随着对象的创建而存在,随着对象的消失而消失
b:局部变量:随着方法调用而存在,随着方法的调用结束而消失
4)初始化值不同
a:成员变量:有默认值:int 类型:0 引用类型:null
b:局部变量:必须初始化值,否则报错!(在使用它之前,没有初始化)
注意:当局部变量名称和成员变量名称一致的时候,就近原则!
2:形式参数分别为基本类型和引用类型的问题?
形式参数是基本数据类型,形式的改变对实际参数是没有影响的
形式参数是应用类型,形式参数的改变会直接实际参数
3:匿名对象是什么?应用场景是什么?
匿名对象:
就是没有名字的对象
调用:执行一次
不适合多次调用
匿名对象可以作为参数进行传递
4:封装是什么?java中封装的体现有哪些?请举例说明。
封装概述
是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
好处:
隐藏实现细节,提供公共的访问方式
提高了代码的复用性
提高安全性。
封装原则:
将不需要对外提供的内容都隐藏起来。
把属性隐藏,提供公共方法对其访问
5:this关键字是什么?为什么要使用this关键字呢?
this:代表所在类的对象引用
记住:
方法被哪个对象调用,this就代表那个对象
什么时候使用this呢?
局部变量隐藏成员变量
6:private关键字的作用:
私有的,不可访问的,
private可以修饰成员变量,也可以修饰成员方法
被private修饰的成员只能在本类中访问,外界不能访问