已有101人关注
成员方法在没有调用语句但实际被调用的情况
发表在Java图书答疑 2020-05-19 悬赏:4 学分 《Java从入门到精通(第4版)》第13章 Swing程序设计
是否精华
版块置顶:

Java从入门到精通(第5版),P248下拉列表框组件【例13.15】

自定义的MyComboBox类中没有手动添加自定义的构造方法,但本例运行的结果是,当创建MyComboBox类

对象时,该类中的代码从头到尾运行了一遍,即在没有调用语句且在main()方法外系统自动调用了该类中的成员参数和成员方法,而且学习Java以来时不时的就会遇到这种情况,,也就搞不懂代码执行的先后顺序流程是怎样的,理解起来就特别吃力。就想问下老师,这种情况一般会在什么时候遇到或者老师有什么好的建议(我是自学)。

分享到:
精彩评论 2
根号申
学分:4736 LV12
TA的每日心情
2021-07-16 23:48:46
2020-05-20
沙发

代码里已经写了MyComboBox实现了,ComboBoxModel接口,也就是下拉框数据模型接口。创建下拉框对象jc的时候,使用MyComboBox对象当做构造方法参数,jc会自动调用MyComboBox对象中已经写好的方法。

stq20192019
学分:62 LV3
2020-05-21
板凳

根号申 发表于2020-05-20 13:03

代码里已经写了MyComboBox实现了,ComboBoxModel接口,也就是下拉框数据模型接口。创建下拉框对象jc的时候,使用MyComboBox对象当做构造方法参数,jc会自动调用MyComboBox对象中已经写好的方法。

老师的解释还是没搞懂。首先new MyComboBox()创建一个自定义类对象,按照之前所学系统会自动调用构造函数,但自定义类MyComboBox中没有定义构造函数,所以JComboBox<String> jc = new JComboBox<>(new MyComboBox());这条语句我的理解就是创建一个MyComboBox类对象,这个对象具有一些属性和一些功能(但没有调用语句,这个对象并没有执行什么动作)然后以这个对象为构造方法参数创建了一个JComboBox对象。

实际运行整个程序代码给我的感觉就是,自定义的A类继承了非自定义类B同时实现了非自定义接口C,当创建A类的对象时,A类内的语句都被运行了一遍,就好像A类是main主方法一样。所以现在越来越糊涂了

首页上一页 1 下一页尾页 2 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照