重载的构造函数将获得null listModel

时间:2012-09-27 01:13:37

标签: java jlist defaultlistmodel

我的重载构造函数似乎有一个相当特殊的问题

在默认构造函数AutoFleetServicesMain()

我有

listModel = new DefaultListModel();
list = new JList(listModel);

并在重载的构造函数AutoFleetServicesMain(int i)

我有

listModel.addElement(dbh.findAll());

根据我的输出,默认构造函数在重载之前被调用,所以我看不出listModel为空的原因

虽然如果我添加listModel = new DefaultListModel();对于重载的构造函数,它将运行而不会出错但我仍然没有得到列表?

我能做什么的想法?

1 个答案:

答案 0 :(得分:2)

听起来你想你的构造函数,但这不会自动发生。尝试将以下语句添加到AutoFleetServicesMain(int)构造函数的开头:

this();

这将在后续逻辑之前调用默认构造函数。有关构造函数链接的更多示例,请参阅此文章:How do I call one constructor from another in Java?