java基础四(参数的传递和构造函数)
1.属性是引用类型怎么访问(内存图讲解)
引用一定是局部变量吗?为什么?
不一定 类体外定义的是一种引用数据类型,
add 是成员变量并且还是一个实例变量,所以add也是一个引用
2.程序在什么情况下会出现空指针异常呢?
空引用 访问 对象相关的数据时,会出现空指针异常
垃圾回收器主要针对堆内存
出现空引用异常的前提条件是?
空引用访问实例(对象相关)相关的数据时,都会出现空指针异常
3.方法在调用的时候参数是如何传递的?
实际上,在java语言中,方法调用时参数传递,和类型无关,都是将变量中保存的那个值传过去,这个值可能是一个数字100,也可能是一个java对象的内存地址:0x1234
4.构造方法
-
当一个构造方法没有提供任何构造方法,系统默认提供无参构造方法,无参构造方法叫构造方法器
-
当一个类中手动提供了构造方法,系统不爱再提供无参数的构造函数
-
无参数构造方法,和有参数的构造方法都可以调用
- new Student();
- new Student(100);
-
构造方法支持方法重载:方法名相同,参数不同
输出结果:
注意事项: -
对于实例变量来说,只要你在方法中没有手动给它赋值,统一都会默认赋值,默认赋值系统值.
将上面User()内容改成下面的内容