老师,请教此题为什么输出结果的是“小明今年18岁了/null今年18岁了”?

老师,请教此题为什么输出结果的是“小明今年18岁了/null今年18岁了”?

疑惑的地方:static加在了变量面前,成为了静态变量,执行时被优先执行,只执行一次,此题中小红年龄先赋值为13,运行时只执行了一次输出结果难道不该是“小红今年13岁了/小明今年null岁了”?”


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

7回答
努力学习的我 2018-12-12 19:24:19

stu1只是声明了,并没有做任何操作,注意4个方法调用都用的是stu对象

慕斯0514027 2018-11-03 15:39:30
代码是不是有问题?小明的代码是不是要用stu1而不是stu呀?


Heisenberg_bo 2018-09-26 14:53:21

注意代码呀😂

shuaishuai66 2018-03-28 21:12:21

真是考眼力,第一次选错了,把str忘了,第二次就再也找不到问题,进来一看,原来在属性中0.0

KABOKUO 2018-03-08 14:37:43

在语法上琢磨半天,结果发现纯粹考眼力 >_<!!!

kevin_zou 2018-03-02 06:49:07

看了20分钟。。。。尼玛

  • 提问者 Ironxi_work #1
    什么鬼............
    2018-03-02 19:41:39
一叶知秋519 2017-11-16 09:55:36

你好,static修饰的变量的值是可以被修改的,也就是说,在stu.setAge(18)中,将年龄的值设为18了,同时static修饰的值可以被共享,所以输出结果是“小明今年18岁了  null 今年18岁了”。祝学习愉快~

  • 提问者 Ironxi_work #1
    老师,还是没太理解此题中先给小红的年龄和名字进行了实例化,stu.setAge(13)/stu.setAge("小红"),调用静态属性,执行两次,年龄应该是“小红今年13岁了 小明 今年13岁了”;每台理解您说的。1.为何名字一个是”小明“一个是空值;2.为何年龄不是13岁?
    2017-11-20 01:33:14
  • 一叶知秋519 回复 提问者 Ironxi_work #2
    你再仔细审下题目,并没有对stu1内的属性进行赋值哟~~相信你会理解这道题目哒~~~
    2017-11-20 10:12:57
  • 提问者 Ironxi_work 回复 一叶知秋519 #3
    stu1没有赋值,输出语句调用的是stu,粗心了0.0
    2017-11-22 16:35:27
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师