我发现不加if判断,不实例化,也可以正常输出,那if语句不是没有用了?
if(this.studentsubject==null)
this.studentsubject=new Subject();
15
收起
正在回答
2回答
同学你好,你的理解与老师的描述有些偏差哦~
这里将Subject设置为null,将其传入Student对象中,是用来判断Student类中的studentSubject 获取专业对象是否进行了实例化,是否会报空指针异常,而不是判断Subject类中getMyStudents()方法的if语句哦~
具体测试代码如下:
如果Student类中没有添加if语句:
输出结果:空指针异常
如果Student类中编写if语句
输出结果:不会出现空指针异常,只是属性输出默认值。
同理Subject中的getMyStudents()方法,数组进行初始化,也是这个道理。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
相似问题
登录后可查看更多问答,登录/注册
1. Java 零基础入门
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星